Compare commits

...
Author SHA1 Message Date
libretroadmin 06fa5325f8 Update version 2024-03-21 16:09:50 +01:00
LibretroAdmin 9e492f74c8 Update CHANGES.md 2024-03-21 07:56:39 -07:00
github-actions 076d3cc91f Fetch translations from Crowdin 2024-03-21 00:12:46 +00:00
Cristi Mitrana b541d1e2d3 gfx/drm: fix mode vrefresh calculation (#16376)
When using an interlaced/doublescan mode, the vertical refresh rate is mis-calculated.
Replaced the current calc method with the one from libdrm's 'modetest' utility [1].

[1] https://gitlab.freedesktop.org/mesa/drm/-/blob/main/tests/modetest/modetest.c?ref_type=heads#L140
2024-03-20 14:02:51 -07:00
github-actions 8bb7173f97 Fetch translations from Crowdin 2024-03-20 00:11:23 +00: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 StankardandBernhard Schelling 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 <[email protected]>
2024-03-19 05:33:02 -07:00
BryanJacobs 338c9a4fe4 Allow combining saves in content dir with save sorting (#16369)
* Allow combining saves in content dir with save sorting

* Formatting

* Realign var assignments
2024-03-19 04:53:32 -07:00
github-actions 6a94ed7299 Fetch translations from Crowdin 2024-03-19 00:11:54 +00:00
Alex Kiraly 5730ac51a5 Fixed SEGFAULT in WebDav task sync + type changes (#16345) 2024-03-18 12:08:40 -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
github-actions 8c96bab4fc Fetch translations from Crowdin 2024-03-18 00:12:23 +00:00
goodusername123 ece60239e8 Update Lua to version 5.3.6 (#16368)
This commit updates the version of Lua used from 5.3.5 to 5.3.6
2024-03-17 09:44:57 -07:00
neil4 5306da72ce Minor updates to Overlay Mouse and Lightgun (#16366) 2024-03-17 09:40:50 -07:00
github-actions 14e49d8b9e Fetch translations from Crowdin 2024-03-17 00:12:31 +00: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
zoltanvb 99aadc8651 Input test function for Remote RetroPad (#16357)
Add input test capability for Remote Retropad core:
- read an .ratst file (JSON format) with test steps
- display instruction (via libretro SET_MESSAGE)
- highlight input to be activated
- display summary when test is finished
2024-03-15 23:59:56 -07:00
Eric Warmenhoven bca3cc0165 Minor iOS JIT availability information (#16358) 2024-03-15 23:59:49 -07:00
zoltanvb b6268d8f98 Change history up to 03.15. (#16359) 2024-03-15 23:59:36 -07:00
github-actions bbf368002e Fetch translations from Crowdin 2024-03-16 00:10:29 +00:00
github-actions 34bcb9f660 Fetch translations from Crowdin 2024-03-15 00:11:20 +00:00
github-actions dd40d81be6 Fetch translations from Crowdin 2024-03-13 00:11:25 +00:00
Rob Loach 936328e637 Remove cursor_directory and resampler_directory (#16346) 2024-03-12 04:10:42 -07:00
github-actions fc67ac0808 Fetch translations from Crowdin 2024-03-11 00:12:03 +00:00
zoltanvb c5c17dac46 Remote retropad display update (#16342)
Refine the display for Remote RetroPad, as a preparation for
using it as a test tool:
- added display for analog axes
- all inputs that were hit at least once, receive a light green color
- removed useless extra button (could never be sent)
2024-03-09 22:48:57 -08:00
Jesse TalaveraandRob Loach b7ddac2431 Add Doxygen-styled comments to parts of the libretro API (#15641)
* Touch up the documentation for a few environment calls

* Touch up more comments

* Update docs for more environment calls

* Add doc comments for more environment calls

* Change various @returns to indicate that the environment call is available

- Some environment calls might be recognized but ignored (e.g. when fast-forwarding during netplay)

* Note some deprecated symbols

* Touch up the docs for RETRO_ENVIRONMENT_SET_MESSAGE

* Touch up the docs for RETRO_ENVIRONMENT_SET_PIXEL_FORMAT

* Add more doc comments

* (libretro) Add more doxygen documentation for the libretro API

* (libretro) Add doxygen comments for the callbacks

* Document retro_init and retro_deinit

* Add comments for retro_log-related symbols

* Add a comment

* Clean up some camera-related comments

* Clean up frame time-related callbacks

* Correct some information about major callbacks

* Clarify some parameter info

* Fix incorrect info about retro_set_environment

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* (libretro) Add doxygen docs on RETRO_THROTTLE

* Touch up the docs for RETRO_ENVIRONMENT_SET_AUDIO_CALLBACK

* Touch up the docs for some macros

* Touch up the docs for some more environment calls

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Tidy up the doc comments for clamping.h

- It was a low-hanging fruit

* Define some sections for constants

- Doxygen will group all contained symbols on one page

* Fix a duplicate @see

* Polish up the docs for the rumble interface

* Polish up the docs for RETRO_ENVIRONMENT_GET_INPUT_DEVICE_CAPABILITIES

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Document INLINE

* Clean up some tags

* Touch up the docs for the sensor interface

* Add docs for RETRO_ENVIRONMENT_SET_PROC_ADDRESS_CALLBACK

* Update docs for RETRO_ENVIRONMENT_GET_INPUT_BITMASKS and accompanying names

* Update some group definitions

* Spiff up the docs for retro_dirent.h

* Document dylib.h

* Document base64.h

* Document crc32.h

* Touch up the docs for audio conversion functions

* Clean up some Doxygen tags

* Refine the docs for RETRO_ENVIRONMENT_GET_PERF_INTERFACE

* Fix incorrect infor in dylib.h

* Touch up the docs for RETRO_ENVIRONMENT_GET_CAMERA_INTERFACE

* Revise the docs for RETRO_ENVIRONMENT_SET_GEOMETRY

* Revise the docs for RETRO_ENVIRONMENT_GET_LOCATION_INTERFACE

* Revise a function's doc

* Touch up most of the rthreads docs

* Touch up the retro_timers.h docs

* Revise the subsystem docs

* Fix some incorrect @see's

* Touch up the docs for RETRO_ENVIRONMENT_GET_LED_INTERFACE

* Give the RETRO_ENVIRONMENT_GET_SAVESTATE_CONTEXT docs a makeover

* Slight cleanup to the microphone docs

* Slight cleanup to the device power docs

* Touch up serialization quirk docs

* Give the MIDI docs a haircut

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Freshen up rtime's docs

* Improve the docs and accompanying definitions for RETRO_ENVIRONMENT_GET_AUDIO_VIDEO_ENABLE

- Revise the text of the documentation
- Introduce an enum that defines the flags (it's still an int, so ABI compatibility will be fine)
- Move the documentation for each bit to its corresponding enum

* Shine the shoes of RETRO_ENVIRONMENT_GET_INPUT_MAX_USERS's docs

* Freshen up the docs for fifo_queue.h

* Document most of task_queue.h

* Put retro_dirent's symbols in a group

* Finish documenting task_queue.h

* Document some compatibility headers

* Document read_stdin

* Document file_stream_transforms.h

* Document the VFS API

- Not the wrappers, just the plain API itself

* (Docs) Add doxygen notes about RETRO_DEVICE_*

* Fix some line breaks

* Revise RETRO_DEVICE docs

* Document strl.h

* Update the features_cpu.h docs

* Rewrite the docs for file_stream.h

* Update the docs for retro_endianness.h

* Update the docs for retro_miscellaneous.h

* Document the RETRO_VFS_SEEK_POSITION constants

* Finish documenting rthreads.h

* Document network_stream.h

* Put the RETRO_MEMORY defines in a defgroup

* Move a doc comment in retro_common.h to file scope

* Revise the docs for RETRO_ENVIRONMENT_SET_CONTROLLER_INFO, and accompanying symbols

* Fix the @param/in/out order in libretro.h's @param declarations

* Tidy up the docs for RETRO_ENVIRONMENT_GET_CORE_OPTIONS_VERSION

* Spiff up the docs for RETRO_ENVIRONMENT_GET_CURRENT_SOFTWARE_FRAMEBUFFER

* Fix some tags

* Polish up RETRO_ENVIRONMENT_GET_HW_RENDER_INTERFACE's docs

* libretro: Add header doxygen

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Update libretro-common/include/libretro.h

Co-authored-by: Rob Loach <[email protected]>

* Clean up the docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY

* Clean up the docs for RETRO_ENVIRONMENT_SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE

* Touch up some comment syntax for RETRO_ENVIRONMENT_GET_VARIABLE_UPDATE

* Fix some inaccuracies

* Re-add the license statement for libretro.h

* Touch up the docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_V2

* Touch up docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY

* Touch up docs for some options-related symbols

* Fix some syntax that was preventing most doc files from being generated

* Express retro_core_option_definition docs in terms of retro_core_option_v2_definition

* Finalize some core option-related docs

* Fix some incorrect info about achievements

* Polish up the docs for RETRO_ENVIRONMENT_SET_MEMORY_MAPS

* Polish up the docs for RETRO_ENVIRONMENT_GET_DISK_CONTROL_INTERFACE_VERSION

* Add a notice for `RETRO_ENVIRONMENT_GET_LOG_INTERFACE`

* Update the disk control interface docs

* Add a sentence to a doc comment

* Update a comment

* Remove an irrelevant @todo

* Touch up the docs for `retro_message_target`

* Touch up the docs for `retro_message_type`

* Touch up the docs for `RETRO_ENVIRONMENT_SET_MESSAGE_EXT`

* Touch up the docs for `RETRO_ENVIRONMENT_SET_AUDIO_BUFFER_STATUS_CALLBACK`

* Touch up the docs for `RETRO_ENVIRONMENT_SET_MINIMUM_AUDIO_LATENCY`

* Revise a comment

* Revise the docs for `RETRO_ENVIRONMENT_SET_VARIABLE`

* Add a `@see`

* Clean up the `RETRO_ENVIRONMENT_SET_FASTFORWARDING_OVERRIDE` docs

* Update the Doxyfile

* libretro: Add three more environment callback doxygen docs

* doxygen: Remove @example reference

---------

Co-authored-by: Rob Loach <[email protected]>
2024-03-09 17:24:01 -08:00
github-actions a417f74476 Fetch translations from Crowdin 2024-03-10 00:12:22 +00:00
github-actions 0c8fa563b3 Fetch translations from Crowdin 2024-03-08 00:11:38 +00:00
github-actions 293391975e Fetch translations from Crowdin 2024-03-07 00:09:55 +00:00
zoltanvb 5109c9efc6 Small sublabel adjustment (#16335)
As mentioned in #16146
2024-03-06 14:37:17 -08:00
Eric Warmenhoven 0e8d60ba3c tvOS: fix a crash when a history playlist item does not have a label (#16336) 2024-03-06 14:37:11 -08:00
zoltanvb 89c6e23f5f Fixes for linuxraw driver (#16330)
Triggered by #16320, a few things are adjusted:
- device name is shown correctly (this was preventing config save)
- driver name fixed in autoconfig related calls
- hotplug reconnect was not working
- some logging added
2024-03-06 09:08:21 -08:00
Themaister ee64f59b18 vulkan: Remove use of oldSwapchain.
Works around a hang on gamescope. oldSwapchain generally isn't useful
after all. Just use the same code paths everywhere.
2024-03-06 12:49:52 +01:00
github-actions ccfc7bab1c Fetch translations from Crowdin 2024-03-06 00:11:35 +00:00
github-actions 952ac2a57a Fetch translations from Crowdin 2024-03-05 00:11:31 +00: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
github-actions c72de1213e Fetch translations from Crowdin 2024-03-04 00:11:57 +00: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
João Henrique 8e57273593 Fix gl2.c OpenGL ES detection. (#16313)
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.
2024-03-03 07:57:47 -08:00
Craig CandNingyuan Li b3c350bacd Webos makefile and CI updates (#16312)
* added webOS CI

* fixed core downloading location
ship SDL2 prebuilt automatically
warning for out-dated toolchain

---------

Co-authored-by: Ningyuan Li <[email protected]>
2024-03-03 07:57:21 -08:00
github-actions ac19523ce0 Fetch translations from Crowdin 2024-03-03 00:12:26 +00:00
Gabriel Morazán ac694145f0 (UWP) Update .pfx key (#16317) 2024-03-02 10:33:03 -08:00
aerisarnandGabriel Morazán 8b1e4a1ad0 MESA UWP Integration (#16285)
* [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 <[email protected]>
2024-03-02 09:36:17 -08:00
github-actions 75c0ede845 Fetch translations from Crowdin 2024-03-02 00:10:30 +00:00
github-actions f6fc0c1d96 Fetch translations from Crowdin 2024-03-01 00:13:07 +00:00
github-actions 07de6d9594 Fetch translations from Crowdin 2024-02-29 00:11:08 +00: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 0df031a580 Fix achievement widget padding (#16303) 2024-02-27 23:20:24 -08:00
github-actions e09820e4c7 Fetch translations from Crowdin 2024-02-28 00:11:38 +00: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
Craig C 2e710f46a6 Fix rpath on webOS and making sdl2 lib copy optional (#16294) 2024-02-26 21:00:18 -08:00
sonninnos 2e90ec9202 More widget corrections (#16296) 2024-02-26 20:59:43 -08:00
sonninnos 455585e8d1 Add some missing msg dots (#16297) 2024-02-26 20:59:07 -08:00
sonninnos 9dfa1df39e Remove some unneeded logging (#16298) 2024-02-26 20:59:01 -08:00
github-actions a3fe9c0ee2 Fetch translations from Crowdin 2024-02-27 00:11:59 +00:00
sonninnos 55f1120036 (WIN32) Read menubar shortcuts with menubar hidden (#16291) 2024-02-26 06:01:33 -08:00
sonninnos 59381b7312 Add visibility option for disc control notifications (#16292) 2024-02-26 06:01:15 -08:00
sonninnos fa3c685ef9 Minor widget alignments (#16288) 2024-02-26 03:12:31 -08:00
sonninnos 2ad48ae585 Reorder User Interface menu (#16289) 2024-02-26 03:12:19 -08:00
sonninnos 7566a0fea7 (WIN32) Fix native ui savestate slots (#16290) 2024-02-26 03:12:07 -08:00
sonninnos 3c4dd50974 More widget additions and adjustments (#16287) 2024-02-25 20:23:08 -08:00
github-actions 55b1ecb3f5 Fetch translations from Crowdin 2024-02-26 00:12:37 +00:00
sonninnos 8342b3cebe Widget position+size+color adjustments (#16284) 2024-02-24 23:44:29 -08:00
github-actions 5c6643c4a8 Fetch translations from Crowdin 2024-02-25 00:12:34 +00:00
Craig C a55dd23db6 webOS: replace ncpu (go), fix undefined function compile error, use pkg-config from buildroot (#16271) 2024-02-24 15:37:53 -08:00
github-actions 14b5feeabf Fetch translations from Crowdin 2024-02-24 00:10:43 +00:00
zoltanvb 14ce660a38 Sublabel finetunes as per #16146 (#16277) 2024-02-23 11:38:07 -08:00
Eric Warmenhoven 8f4964a871 iOS/tvOS: pause application on applicationWillResignActive (#16280) 2024-02-23 11:35:27 -08:00
github-actions d76df869b1 Fetch translations from Crowdin 2024-02-23 00:11:13 +00:00
github-actions 70daba6594 Fetch translations from Crowdin 2024-02-22 00:11:23 +00:00
Mats 6de0fd4362 Fix HDR w/ Vulkan driver after reinit (#16270) 2024-02-21 08:39:26 -08:00
github-actions 0f36082644 Fetch translations from Crowdin 2024-02-21 00:11:38 +00: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
github-actions cd1a970bf2 Fetch translations from Crowdin 2024-02-20 00:11:15 +00: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
sonninnos 25c15834c3 Clean up and reduce refresh rate logging (#16259) 2024-02-19 11:12:24 -08:00
sonninnos 8f1678f865 Don't load favorites/history playlist if size is 0 (#16260) 2024-02-19 11:12:18 -08:00
Eric Warmenhoven 50f4807f88 tvOS: when cache is deleted, force assets.zip re-extraction (#16264)
Also including a script to make building assets.zip easier, for people
building from source themselves
2024-02-19 11:12:09 -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
github-actions a2c730e475 Fetch translations from Crowdin 2024-02-19 00:12:02 +00: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
Eric Warmenhoven 8071b49f9d macos: add portable.txt as flag for portable install (#16244) 2024-02-18 08:23:40 -08:00
Subs c264c5a8de fix a buffer overflow on DRM mode name (#16245) 2024-02-18 08:23:20 -08:00
sonninnos 6e6a4d8b6d RETROK_UNKNOWN fixes and cleanups (#16250) 2024-02-18 08:23:05 -08:00
Bobby Smith de8e33c6b1 Bring the recent system files checks changes to Qt menu (#16251) 2024-02-18 08:22:57 -08:00
Eric Warmenhoven 47df5e6547 Add icon for tvOS Top Shelf (#16252) 2024-02-18 08:22:50 -08:00
github-actions cfd79a981b Fetch translations from Crowdin 2024-02-17 00:10:45 +00:00
github-actions 28326ce0ac Fetch translations from Crowdin 2024-02-16 00:11:22 +00:00
github-actions b209a26ebb Fetch translations from Crowdin 2024-02-15 00:11:27 +00:00
Patrick Corrigan 066a0629ff Fix actual parameter for mouse y in translate coord 2024-02-14 15:31:56 +01:00
sonninnos e8956418a8 Fix input state combos and empty binds (#16233) 2024-02-13 16:16:39 -08:00
github-actions 34e28f548a Fetch translations from Crowdin 2024-02-14 00:11:15 +00:00
github-actions 6040d4cc62 Fetch translations from Crowdin 2024-02-13 00:12:05 +00:00
zoltanvb 8dd26faf51 Fix ANDROID_INPUT_WORKAROUND sublabel. (#16226) 2024-02-12 05:40:46 -08:00
github-actions 6fb5ce2351 Fetch translations from Crowdin 2024-02-12 00:11:43 +00:00
github-actions 1c5cf6b603 Fetch translations from Crowdin 2024-02-11 00:12:32 +00:00
github-actions 434e94c782 Fetch translations from Crowdin 2024-02-10 00:11:29 +00:00
Bobby Smith c43f4738d9 Fullscreen/windowed fixes when using overrides (#16213) 2024-02-09 11:54:46 -08:00
Eric Warmenhoven bc5805e8e6 Fix #16205, crash on non-Metal build (#16214) 2024-02-09 07:31:59 -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
github-actions 156dd055d9 Fetch translations from Crowdin 2024-02-09 00:11:17 +00:00
github-actions 1265c92249 Fetch translations from Crowdin 2024-02-08 00:11:21 +00:00
github-actions fed6cc0ab2 Fetch translations from Crowdin 2024-02-07 00:11:07 +00:00
github-actions f5f00c4fa2 Fetch translations from Crowdin 2024-02-06 00:11:42 +00:00
github-actions 75495a6fc9 Fetch translations from Crowdin 2024-02-05 00:12:07 +00:00
zoltanvb 429e83745e Localization for a few narrator-only strings. (#16195) 2024-02-04 11:58:44 -08:00
Eric Warmenhoven ad48a74bb8 Update to MoltenVK 1.2.7 (#16199) 2024-02-04 11:58:25 -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
libretroadmin e5029ffdfb Define HAVE_ACCESSIBILITY for MSVC UWP 2024-02-04 19:40:28 +01:00
github-actions fb63c79f32 Fetch translations from Crowdin 2024-02-04 00:12:06 +00:00
github-actions ad8975cb5a Fetch translations from Crowdin 2024-02-03 00:11:03 +00:00
Bobby Smith 7c3d07bf6d Tweaks to how the "Analog to Digital Type" setting is saved (#16187) 2024-02-02 12:53:24 -08:00
Ophidon f6502b89aa Don't Sleep to Sync in Non-VRR Normal Running State (#16189)
The check for sleeping to sync to a specific speed that is meant for fast forward/vrr could be true for a non-vrr normal core running state causing a possible sleep in a situation it was not intended for, especially at higher hz, and thus interfering with frame pacing.
2024-02-02 06:28:01 -08:00
the-Chain-Warden-thresh 380daf1b38 Backport CVE-2020-24370's patch (#16190) 2024-02-02 06:27:36 -08:00
github-actions 92608cba15 Fetch translations from Crowdin 2024-02-02 00:14:45 +00:00
Eric Warmenhoven 0cbc8d2a56 OSX: Only look at major GL version when creating context (#16185) 2024-02-01 12:23:54 -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
github-actions 633dad5d6b Fetch translations from Crowdin 2024-02-01 00:12:08 +00: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
sonninnos 494f6a10da Restore video frame limit on unpause (#16183) 2024-01-31 09:12:48 -08:00
github-actions 7558c99cfa Fetch translations from Crowdin 2024-01-31 00:11:20 +00:00
github-actions eabdc19aee Fetch translations from Crowdin 2024-01-30 00:11:30 +00:00
zoltanvb 996eb680b0 Do not try to fetch full name thumbnails if not set explicitly. (#16174) 2024-01-29 08:42:39 -08:00
github-actions 25317c3a1d Fetch translations from Crowdin 2024-01-29 00:11:38 +00: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
zoltanvb 00d01c844e Enable serial detection from GDI files. (#16171) 2024-01-28 08:51:20 -08:00
github-actions c4c1fb18af Fetch translations from Crowdin 2024-01-28 00:12:29 +00:00
github-actions ceaf421453 Fetch translations from Crowdin 2024-01-27 00:10:45 +00:00
sonninnos 8ad8b6bdad Input state overflow band-aid (#16168) 2024-01-26 09:44:48 -08:00
github-actions 4c69431798 Fetch translations from Crowdin 2024-01-26 00:12:10 +00:00
Francisco Javier Trujillo Mata daccac9a1b Merge pull request #16166 from fjtrujy/fix_cwd_path
[PS2] Required after toolchain upgrade: Fixing usage of `cwd`
2024-01-25 21:35:25 +01:00
Francisco Javier Trujillo Mata 3e0a4faa96 fixing usage of cwd 2024-01-25 17:19:08 +01:00
libretroadmin 71edae5955 Fix unused function warning 2024-01-25 16:04:11 +01:00
libretroadmin ac353d1401 Bump version 2024-01-25 15:59:56 +01:00
Eric Warmenhoven 13e96e9567 Fix variable quoting issue (#16165) 2024-01-25 06:02:44 -08:00
sonninnos 8f77938767 Fix ghost input when setting RETROK_UNKNOWN (#16163) 2024-01-25 02:46:48 -08:00
github-actions 65fceb9ea0 Fetch translations from Crowdin 2024-01-25 00:12:15 +00:00
kikmonandpapa 48205d5754 Added 2022 solution and updated github action flow to compile new targets (#16158)
Co-authored-by: papa <papa>
2024-01-23 22:50:42 -08:00
github-actions 9f205b35b3 Fetch translations from Crowdin 2024-01-24 00:12:13 +00: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
github-actions c1130b8775 Fetch translations from Crowdin 2024-01-23 00:12:59 +00:00
Eric Warmenhoven bd6c34b576 Add HAVE_ACCESSIBILITY to iOS builds (#16154) 2024-01-22 10:06:32 -08:00
sonninnos 266d3ed150 Add option for merging 'Hotkey Enable' device types (#16152) 2024-01-21 18:13:17 -08:00
Eric Warmenhoven cd9fb0d072 Adjust apple packaging so correct git version gets reported (#16139) 2024-01-21 18:13:07 -08:00
zoltanvb 3873c8dbfb Changes up to Jan 20. (#16150) 2024-01-21 18:12:58 -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
Jamiras 4ba5fc0333 (cheevos) upgrade to rcheevos 11.1 (#16151)
* move pause spam management into rc_client

* update to rcheevos 11.1

* show [m] on missables

* update makefile
2024-01-21 18:12:30 -08:00
github-actions e3329dbbab Fetch translations from Crowdin 2024-01-22 00:12:45 +00:00
github-actions 162ad01233 Fetch translations from Crowdin 2024-01-21 00:13:03 +00:00
Ophidon 72c901a90e Squashed commit of the following: (#16142)
commit 793d41c303206b43932ddcefd44a45836def55eb
Author: Ophidon <[email protected]>
Date:   Fri Jan 19 23:12:31 2024 -0500

    Build Fix 2

    Move declarations of iterators.

commit c0e959b3d3cd773a66a17cfe034f08eaa53d525a
Author: Ophidon <[email protected]>
Date:   Fri Jan 19 22:57:01 2024 -0500

    Build Fix

    Help string was 14 characters too long for c89.

commit fc5506c7906bf82d6f88b7b0d7e4764d58d90622
Author: Ophidon <[email protected]>
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
github-actions c03deadb12 Fetch translations from Crowdin 2024-01-20 00:11:40 +00:00
github-actions a99a7deab1 Fetch translations from Crowdin 2024-01-19 00:12:19 +00:00
Eric Warmenhoven e6eadecabd Disable mFI secondary_joypad behavior (#16129)
Some controllers show up as both HID and mFI. In that case we probably
want to let the user pick which driver to use, rather than balance
across them.

This fixes issues with the analog stick moving in the wrong direction
on the y axis.
2024-01-18 09:33:16 -08:00
github-actions 572b15a0e9 Fetch translations from Crowdin 2024-01-18 00:12:10 +00:00
github-actions fdc7fe58df Fetch translations from Crowdin 2024-01-16 00:12:01 +00:00
github-actions 13c892cf4a Fetch translations from Crowdin 2024-01-15 00:12:24 +00:00
Rafael Sá Menezes 340f733488 Enable cheevos for Wii builds (#16116)
* Fixed libogc error codes interpretation for sockets

* Added thread code for libogc rc_compat

* Enabled cheevos for Wii
2024-01-13 18:47:28 -08:00
github-actions eb76f00c7a Fetch translations from Crowdin 2024-01-14 00:13:03 +00:00
github-actions 24970fae51 Fetch translations from Crowdin 2024-01-13 00:11:19 +00:00
github-actions 61364645fc Fetch translations from Crowdin 2024-01-12 00:11:57 +00:00
Eric Warmenhoven 286e31dc7d Create directories after the config is read (#16093) 2024-01-11 13:16:27 -08:00
Eric Warmenhoven 6c57b31ce5 Fix setting iOS app icon (#16107) 2024-01-11 05:48:54 -08:00
github-actions 850fedb43c Fetch translations from Crowdin 2024-01-11 00:12:08 +00:00
Giovanni Cascione 5932a30824 Add environment command to get playlists path (#16103) 2024-01-10 07:26:46 -08:00
Bobby Smith caf2bcbc80 Don't save mouse buttons in autoconfig (#16098) 2024-01-10 07:26:23 -08:00
Eric Warmenhoven b01d3a63ea Fix regression, startup crash in Qt when desktop ui enabled (#16106) 2024-01-10 07:26:13 -08:00
github-actions bda2b1914e Fetch translations from Crowdin 2024-01-10 00:11:54 +00:00
waitingmoon 35e140ae08 fix wrong translation key (#16095) 2024-01-09 00:19:50 -08:00
sonninnos bcb804f3f2 Limit paused video refresh always (#16090) 2024-01-09 00:19:35 -08:00
Eric Warmenhoven 8c58979d76 Make sure the playlist directory exists before writing a playlist (#16085) 2024-01-09 00:18:23 -08:00
Eric Warmenhoven d7852d5db9 Fix incremental macos/ios/tvos builds, and pull correct git version (#16089) 2024-01-09 00:18:05 -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
github-actions 6eaa3aaa9e Fetch translations from Crowdin 2024-01-09 00:12:23 +00:00
Daniel ByonandDaniel Byon fc10539f3c Fix auto save state when state file does not already exist (#16084)
Co-authored-by: Daniel Byon <[email protected]>
2024-01-07 16:59:59 -08:00
github-actions 773a2750cd Fetch translations from Crowdin 2024-01-08 00:12:16 +00:00
Eric Warmenhoven 272b66a5db Make it easy to create a "portable" osx build (#16081)
Default to false, except steam builds where it's forced true; a
portable build has the behavior of putting all files next to the
application.
2024-01-07 07:58:06 -08:00
Ryan Kuba ed73141856 change default audio settings for emscripten builds (#16079) 2024-01-07 07:57:56 -08:00
zoltanvb 1e58df4f51 Flexible thumbnail improvements. (#16082)
- Move flag logic to task_push_pl_entry_thumbnail_download - this
enables individual "download thumbnails" entry to be also flexible
- Add a message when this download has been tried enough times
(i.e. 3)
- Optimize cases when full or short name is the same as standard
name, skip queries if so (both download and local file)
2024-01-07 07:57:39 -08:00
github-actions 398ace33cc Fetch translations from Crowdin 2024-01-07 00:12:51 +00:00
github-actions 19a368899c Fetch translations from Crowdin 2024-01-06 00:10:57 +00:00
Eric Warmenhoven ca6e60f41b Don't needlessly (re-)create default directories on apple platforms (#16073) 2024-01-05 13:49:15 -08:00
Eric Warmenhoven 07612483f2 Show git version in system information (fixes #16072) (#16076) 2024-01-04 23:12:59 -08:00
Eric Warmenhoven e428541f9a Fix input autodetect notices sometimes not appearing (#16077) 2024-01-04 23:12:33 -08:00
Eric Warmenhoven a3e9525988 Fix crash when content has no extension (#16078) 2024-01-04 23:12:19 -08:00
github-actions 01edfbfc16 Fetch translations from Crowdin 2024-01-05 00:11:44 +00:00
zoltanvb 28f8d89738 Change list update up to Dec 31 (#16069)
* Update CHANGES.md

Changes since 1.16.0 up to 2023-12-01

* Update CHANGES.md

Changes up to end of 2023 (+ Cloud Sync missed from previous version)
2024-01-04 15:31:28 -08:00
Colin Kinloch a2057d6069 input/wayland: Use unaccelerated pointer motion (#16074)
This fixes small mouse movements being rounded down to 0.

Fix "Mouse cursor appears to have a deadzone on Wayland" (#16015)
2024-01-04 15:30:47 -08:00
github-actions 06deba24a8 Fetch translations from Crowdin 2024-01-04 00:12:23 +00:00
github-actions 1e572aaa7a Fetch translations from Crowdin 2024-01-03 00:11:35 +00:00
sonninnos 945ad4a89f Limit paused video refresh when vsync is disabled (#16067) 2024-01-02 10:01:19 -08:00
Eric Warmenhoven 4220e5683d Do CRC checks on PSP/PSP(PSN) content scan (#15623) 2024-01-01 21:57:44 -08:00
zoltanvb 8886b92455 Thumbnail fixes (#16062)
* Minor thumbnail improvements

- set standard name if only one entry is in the playlist
- use first database name for thumbnails if core has multiple

* Fix playlist thumbnail downloader

Playlist thumbnail downloader function was missed from the flexible
thumbnail name update, now it is added.
2024-01-01 17:23:18 -08:00
SunM c969143efb Fix for Potential CWE 457 Issue in video_driver.c (#16064)
* Fix audio_statistics_t audio_stats to {0}

CWE-457 Use of Uninitialized Variable

* Fix audio_statistics_t audio_stats to {0}
2024-01-01 17:23:03 -08:00
David G. F ab376eb669 Make auto-savestates not use the task queue (#16061)
Auto savestate (and its optional thumbnail) is generated on core unload
(quit, netplay start, etc). This ends up using the task-queue, which in
many cases deadlocks and/or causes a crash due to its asynchronous
nature.

Given that this is a state that must be generated before quiting or
reloading the core, it makes no sense to use the task queue, it should
be a synchronous job like for instance SRAM saving.

This should fix #15248 (tested by @schmurtzm)
2023-12-30 21:44:15 -08:00
github-actions f200717b4c Fetch translations from Crowdin 2023-12-31 00:12:52 +00:00
zoltanvb 4d8283a460 Minor improvements for db / playlist handling (#16060)
Do not load rom_name as nothing is using it (but it does occupy memory)
Add two more media index options for label sanitization
2023-12-30 11:45:36 -08:00
sonninnos aa1d47ad0f (WASAPI) Buffer cleanups (#16057) 2023-12-28 18:56:28 -08:00
Eric Warmenhoven 285f800c2e iOS 9 build fix (#16056) 2023-12-28 13:03:47 -08:00
David G. F ea87495a4e Save improvements (#16053)
* Simplify autosave command function

* Simplify and split save and savestate logic

save.c contains "SRAM" saves and their logic, which uses no task/queue.
2023-12-28 11:10:46 -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 99309a4d79 Cloud sync fixes - ignore .DS_Store files and re-sync on app foreground (#16055) 2023-12-28 11:10:13 -08:00
zoltanvb 3ce56c5b42 Flexible thumbnail matching (#16040)
Add logic to handle 3 possible thumbnail names, in following order:
- most exact name derived from content file (same name, with .png extension)
- usual name derived from playlist (usually coming from database)
- shortened name up to first bracket, chopping off region/publisher etc. info

For local file system, names are checked always.
For thumbnail downloads, names are checked each time the item comes up
in the playlist, meaning that it may take going back and forth 3 times
for a thumbnail to appear. However, as a positive change, failed thumbnail
downloads are not repeated for the same playlist, which was not the case
earlier.
2023-12-27 02:26:46 -08:00
github-actions 824a0f86fd Fetch translations from Crowdin 2023-12-26 00:11:43 +00:00
Eric Warmenhoven 089f7321c7 iOS: Allow changing the app icon (take 2) (#16034) 2023-12-24 16:36:49 -08:00
github-actions 3c3971b6c3 Fetch translations from Crowdin 2023-12-25 00:12:11 +00:00
Eric Warmenhoven dc2ae86437 Fix #16023 - ssl fails on mac x86 with newer clang (#16032)
Fix comes from https://github.com/Mbed-TLS/mbedtls/pull/4947
2023-12-23 01:22:05 -08:00
github-actions 0e7d7e30b9 Fetch translations from Crowdin 2023-12-23 00:11:02 +00:00
libretroadmin 146de90214 Fix some warnings 2023-12-22 09:50:01 +01:00
libretroadmin 9d90aff7ba Add localized strings back ; buildfix 2023-12-22 09:44:43 +01: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
github-actions 7d50f50315 Fetch translations from Crowdin 2023-12-22 00:11:43 +00:00
Eric Warmenhoven f4fbcd129e Fix thumbnails in History for content loaded through Load Content (#16025) 2023-12-21 13:48:34 -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
kyns.one f4f43d9501 Fix screen resolution always tied to the main monitor on win32 platforms. (#15897) 2023-12-20 16:34:53 -08:00
libretroadmin d0a69ffd71 (wiiu) HBL_loadToMemory - close file descriptor to avoid leakage 2023-12-21 01:32:35 +01:00
zengwei2000 df05f6e0eb fix the Memory leak: psp (#16016)
fix the Memory leak: psp

Signed-off-by: zengwei [email protected]

Signed-off-by: zengwei [email protected]
2023-12-20 16:24:35 -08:00
aveyond 4abd4e8d27 playlist: add thumbnail match with filename config (#16022)
In the commit [1], a global configuration "thumbnail match with filename"
was added which allows thumbnail match with filename.

This commit adds playlist level "thumbnail match with filename" for more
flexible configuration.

[1] 32ed9b6041 ("플레이리스트 롬파일 이름으로 썸네일 이미지를 찾도록 옵션 추가 (#15731)")

Signed-off-by: masky2012 <[email protected]>
2023-12-20 16:24:23 -08:00
Bernhard Schelling e796716f57 Netplay netpacket interface fix "Sort Save States into Folders" settings (#16019)
Before this fix with the folder setting enabled a core using the netpacket interface would append the sort folder name twice thus breaking existing save states
2023-12-20 16:23:28 -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
github-actions 9ba18d6a7c Fetch translations from Crowdin 2023-12-21 00:11:32 +00:00
github-actions 1d1971463c Fetch translations from Crowdin 2023-12-19 00:11:46 +00:00
Eric Warmenhoven 0c1ee70ca0 iOS: Fix xrgb8888 in gl driver (#16013) 2023-12-18 01:18:03 -08:00
libretroadmin 437d9ddbf1 (task_translation.c) Fix warning 2023-12-18 01:39:00 +01:00
github-actions b2ebf281aa Fetch translations from Crowdin 2023-12-18 00:12:17 +00:00
libretroadmin 2980eb7e12 Silence some warnings 2023-12-17 05:11:18 +01:00
libretroadmin 10082e1c32 Merge midi_driver.c and location_driver.c into retroarch.c -
files were not touched for 6 months so splitting them up serves
no real purpose
2023-12-17 05:01:12 +01:00
github-actions 230503b206 Fetch translations from Crowdin 2023-12-17 00:12:44 +00:00
github-actions 9f71c2a353 Fetch translations from Crowdin 2023-12-16 00:11:34 +00:00
github-actions c8659ece16 Fetch translations from Crowdin 2023-12-15 00:12:20 +00:00
zoltanvb 0480736dcc Update wayland-protocols version to 1.31 due to fractional-scale-v1 (#15990) 2023-12-14 11:09:26 -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
github-actions 87b6064160 Fetch translations from Crowdin 2023-12-14 00:11:40 +00:00
Jamiras 4bf0816392 fix crash showing achievement game placard when threaded video enabled and game image not cached (#16008) 2023-12-12 21:43:54 -08:00
github-actions c4faac0816 Fetch translations from Crowdin 2023-12-13 00:11:40 +00:00
Eric Warmenhoven 2ca9cf0b56 Rebuild of moltenvk for tvos (#15999) 2023-12-12 08:44:43 -08:00
Eric Warmenhoven dfda186985 Fix webdav crash bug in digest auth handling (#16003) 2023-12-12 08:44:29 -08:00
github-actions 44132c42b7 Fetch translations from Crowdin 2023-12-12 00:11:51 +00:00
github-actions 1024ede007 Fetch translations from Crowdin 2023-12-11 00:12:17 +00:00
github-actions d9b90e2182 Fetch translations from Crowdin 2023-12-10 00:12:55 +00: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
Eric Warmenhoven 26918b25e0 Enable overlay support on tvos (#15987) 2023-12-09 04:48:22 -08:00
github-actions fb1bee0ce2 Fetch translations from Crowdin 2023-12-09 00:11:44 +00:00
github-actions a8ffa5054c Fetch translations from Crowdin 2023-12-08 00:11:44 +00:00
Jamiras be8e294c56 don't flag rewind as initialized until after we're able to validate against core info (#15983) 2023-12-07 11:36:52 -08:00
github-actions 5a0317b440 Fetch translations from Crowdin 2023-12-07 00:11:32 +00:00
Jesse Talavera 750b64d89e Fix 32-bit Linux builds with XDelta enabled (#15980)
* First crack at a GitHub Actions pipeline for 32-bit Linux

* Simplify the integer typedefs in xdelta3.h

* Add XDelta to Linux.yml
2023-12-06 05:07:46 -08:00
zoltanvb 6ac1fb7b86 Change XDelta support to automatic and check lzma.h presence. (#15962) 2023-12-06 05:07:22 -08:00
github-actions 765ccda24f Fetch translations from Crowdin 2023-12-06 00:11:57 +00:00
Jesse Talavera 17c9227a9c Fix the build when XDelta is enabled on certain platforms (#15968)
* Rename the `MIN_MATCH` defined by xdelta3 to `XD3_MIN_MATCH`

- zlib defines its own macro by that name, but with a different value

* Don't redefine `SIZEOF_ARRAY` in xdelta3 if it already exists

* Don't define ssize_t in xdelta3, rely on libretro's definition instead

* Enable xdelta3 support in MSVC 2015-2019

* Fix some invalid MSBuild condition syntax

* Always build xdelta with XD3_USE_LARGESIZET as 1

* Fix an `#if` in task_patch.c

* Enable `HAVE_XDELTA` in the UWP build

* First crack at fixing Xdelta support for Android
2023-12-05 08:32:16 -08:00
github-actions 456f9b099a Fetch translations from Crowdin 2023-12-05 00:11:33 +00:00
zoltanvb 358d7cc642 Add help text for controller drivers (#15977)
Added labels and help text for controller drivers. Help was skipped
for those drivers which likely have no alternative on the given
platform.
2023-12-04 13:42:34 -08:00
github-actions 0b18225664 Fetch translations from Crowdin 2023-12-04 00:12:23 +00:00
github-actions 11c0f3df69 Fetch translations from Crowdin 2023-12-03 00:12:16 +00: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
zoltanvb 12b6b68132 Fix videocore + switchres compile failure (#15971)
After commit f24893b, some definitions were not included when RA
is compiled with --enable-videocore option (RPi legacy driver).
2023-12-02 05:33:03 -08:00
github-actions 1fab694b76 Fetch translations from Crowdin 2023-12-02 00:11:09 +00:00
github-actions cc910ffcb6 Fetch translations from Crowdin 2023-12-01 00:12:54 +00:00
Eric Warmenhoven d2253c3de3 iOS/tvOS: create gl context as gles3 (#15958)
iOS 7+ supports gles3, which is backwards compatible with gles2. This
doesn't enable the glcore driver (which isn't working on ios yet), it
just changes the underlying context.

This fixes some of the rendering performance problems on mupen64plus_next.
2023-11-30 03:30:17 -08:00
Eric Warmenhoven 36d9bdc2da iOS/tvOS: minor xcode cleanup (#15957)
This hopefully makes debug and release easier to manage by making
their C flags the same and moving the differences to the preprocessor
macros.
2023-11-30 03:30:08 -08:00
Eric Warmenhoven d657e5b701 xdelta support on macos/ios/tvos (#15964) 2023-11-30 03:29:46 -08:00
zoltanvb fd04c8ca57 Rebase of wakira's wp_fractional_scale_v1 support (#15965)
A rebase of earlier PR https://github.com/libretro/RetroArch/pull/15355
No changes added (except for one log).
2023-11-30 03:29:38 -08:00
github-actions fb864b889b Fetch translations from Crowdin 2023-11-30 00:11:43 +00:00
github-actions 0ffd3030bf Fetch translations from Crowdin 2023-11-29 00:11:44 +00:00
github-actions 7294dbe937 Fetch translations from Crowdin 2023-11-28 00:11:34 +00:00
Eric Warmenhoven 1aeac90d8c Apple - don't call mkdir needlessly (#15954) 2023-11-26 19:34:56 -08:00
Eric Warmenhoven d8c444d44d iOS - Default to not enabling keyboard gamepad (#15340) (#15955) 2023-11-26 19:34:45 -08:00
github-actions ee62cb5407 Fetch translations from Crowdin 2023-11-27 00:11:44 +00:00
Eric Warmenhoven d7708ad84a iOS: allow ignoring the safe area (#11210) (#15951) 2023-11-26 04:59:22 -08:00
Eric Warmenhoven 2b820bdf10 iOS: Add option to disable respecting silent mode (#14928) (#15952) 2023-11-26 04:59:14 -08:00
github-actions f7b0e3e1c7 Fetch translations from Crowdin 2023-11-26 00:12:51 +00:00
github-actions 64bcbbc5b0 Fetch translations from Crowdin 2023-11-25 00:10:33 +00:00
Bobby Smith bd10a88a57 [Vulkan] Fix a validation error (#15946) 2023-11-24 11:23:58 -08:00
David G. F 0c6ecc53c7 Add LOAD_WITHOUT_CORE_INFO to Makefile (#15944) 2023-11-23 20:19:19 -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
github-actions 3e6ada7239 Fetch translations from Crowdin 2023-11-24 00:11:15 +00:00
Bobby Smith 3c25f19d80 [Win32] Fix window size when aspect ratio is < 0 (#15941) 2023-11-22 10:14:48 -08:00
Jamiras 39a44414ea reinitialize rewind buffer after loading game with achievements (#15934)
* reinitialize rewind buffer after loading game with achievements

* fix #endif placement for HAVE_GFX_WIDGETS
2023-11-22 08:50:09 -08:00
sonninnos a40f695cb8 (XMB) Corrections and cleanups (#15935)
* (XMB) Corrections and cleanups

* (XMB) Wallpaper logic rework
2023-11-22 08:49:27 -08:00
revvv f188b7a824 Wii/Wii U: Fix 3 USB controllers. See #7015 (#15938)
Fixes commit a4b934b which did not update all array indices.
2023-11-22 08:49:12 -08:00
Jamiras c2f32a434d don't track disc changes when achievements are disabled (#15939) 2023-11-22 08:48:45 -08:00
github-actions 4fd118f446 Fetch translations from Crowdin 2023-11-22 00:12:13 +00:00
github-actions 3b27e5b976 Fetch translations from Crowdin 2023-11-21 00:11:50 +00:00
sonninnos 598a0c0d37 (WASAPI) Shared buffer refactor + cleanup (#15929) 2023-11-19 08:44:25 -08:00
baidxiandjuno ee417c0f75 fix dynamic wallpaper bug (#15927)
Signed-off-by: juno <[email protected]>
Co-authored-by: juno <[email protected]>
2023-11-19 05:52:50 -08:00
Joe Osborn 46402732ba update emscripten web testing docs (#15925) 2023-11-18 16:28:12 -08:00
github-actions 4578026186 Fetch translations from Crowdin 2023-11-18 00:10:54 +00:00
Jesse Talavera-Greenberg e76a507b4a Update .gitignore (#15922)
Add libretro core backups to .gitignore
2023-11-17 11:26:05 -08:00
Jesse Talavera-Greenberg 1b03e388f8 Fix #15919 (#15923)
- Contentless support and populated content paths are not mutually exclusive in practice
- It just looked that way because most cores that support contentless mode to date don't use softpatching very much
2023-11-17 11:25:58 -08:00
Joe Osborn 0f4166a59f Use ZipFS for web player asset bundle (#15924)
* wip

* fix mount path

* Fix path for zip bundle

* fix case where idbfs sets up correctly and filesystem initializes too early

* Use partfiles to keep each zip small

* use bufferview slices instead of resize to support firefox
2023-11-17 11:25:45 -08:00
github-actions 358c6946fe Fetch translations from Crowdin 2023-11-17 00:11:32 +00:00
sonninnos 3bf5b518bb (GLUI) Icon corrections (#15914) 2023-11-16 09:41:03 -08:00
Jesse Talavera-Greenberg d84f50d0c9 Add some paths to .gitignore (#15917) 2023-11-16 09:40:56 -08:00
sonninnos dc0fbe9152 (WIN32) D3D11 prefer correction (#15916) 2023-11-16 09:40:45 -08:00
sonninnos 05a0931d2d (WIN32) Prefer D3D11 and WASAPI (#15913) 2023-11-16 06:04:48 -08:00
github-actions 5366ad0b71 Fetch translations from Crowdin 2023-11-16 00:11:35 +00:00
sonninnos 191ca8dfe4 Default 'Bind Hold' to 0 (#15909) 2023-11-15 13:18:57 -08:00
Joe Osborn 499e12c655 replace dashes with underscores in core names (#15910) 2023-11-15 13:18:41 -08:00
sonninnos 2463188fed (D3D11+12) Improve 'Max Frame Latency' logging (#15911) 2023-11-15 13:18:31 -08:00
Jamiras bbe7afcd82 (cheevos) use rc_client for state management (#15912)
* use rc_client for achievement processing

* log disconnect/reconnect messages

* address compiler warnings

* address c89 warning

* address c89 warning
2023-11-15 13:18:20 -08:00
Joe Osborn 936ff84204 Prefix core name with libretro_ for exports so that cores like 81, 2048 don't cause errors (#15908) 2023-11-15 02:08:12 -08:00
github-actions 064b530cc8 Fetch translations from Crowdin 2023-11-15 00:11:53 +00:00
sonninnos 38c77e9cfa Revert "Log level prefix cleanup (#15852)" (#15907)
This reverts commit 2a51e66120.
2023-11-14 14:31:55 -08:00
Viačasłaŭ Chalikin 9e2da4ace7 Fix linux narrator (#15904)
* Fix forking process for narrator

* Use compatible languages for eSpeak
2023-11-14 09:52:19 -08:00
Eric Warmenhoven 2ce083393f Nit: pass the write/read handlers in the correct order (#15902) 2023-11-14 09:51:51 -08:00
sonninnos b341d90c2e Fix word wrapped widget length (#15905) 2023-11-14 09:51:43 -08:00
sonninnos f091b5a9e9 Move and relocate 'Frame Delay' (#15898) 2023-11-12 11:23:57 -08:00
github-actions e71a83e5c4 Fetch translations from Crowdin 2023-11-12 00:12:17 +00: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
fishcu b5303e347a Change rotation type to int to maximize compatibility and to match glUniform1i (#15890)
* Change rotation type to int to maximize compatibility and to match glUniform1i

* Change to C style comment; Make comment more useful (hopefully)
2023-11-10 16:46:04 -08:00
fishcu 1b50470c96 Add FinalViewportSize support to GLSL (#15891)
* Change rotation type to int to maximize compatibility and to match glUniform1i

* Change to C style comment; Make comment more useful (hopefully)

* Add support for FinalViewportSize in GLSL
2023-11-10 16:45:20 -08:00
github-actions 833c4b5acd Fetch translations from Crowdin 2023-11-11 00:10:36 +00:00
sonninnos f20c8493b3 Use video refresh rate for menu frame limiting (#15886) 2023-11-09 16:36:19 -08:00
Bernhard Schelling 107283edc8 Updates to the netplay netpacket interface (#15887)
* Updates to the netplay netpacket interface
- Switch environment call number from 76 to 78 (retire 76 as it was never used by any core)
- Simplify broadcasts by removing the option to send to all but one client
- Separate explicit flushing and querying of incoming packet into two operations (RETRO_NETPACKET_FLUSH_HINT and retro_netpacket_poll_receive_t)
- Enable a core to specify a protocol version string which can get used instead of core version to determine compatibility between two players
- Log and notify a separate message when there is a content crc mismsatch to convey it being less severe (as different games may be able to do network communication with each other)

* C89 compile fix
2023-11-09 16:36:08 -08:00
github-actions c976fbb868 Fetch translations from Crowdin 2023-11-10 00:12:16 +00:00
sonninnos 866c6853ba (XMB) Background image improvements (#15884) 2023-11-09 00:54:02 -08:00
github-actions 03dab11092 Fetch translations from Crowdin 2023-11-09 00:11:59 +00:00
github-actions 9dbb069b67 Fetch translations from Crowdin 2023-11-08 00:11:25 +00:00
github-actions a61812edea Fetch translations from Crowdin 2023-11-07 00:11:45 +00:00
Viačasłaŭ Chalikin 6b0313ed21 Fix: request builder for the AI Service (#15879) 2023-11-06 10:52:17 -08:00
Eric Warmenhoven 7237b6acfc Enable HDR support in iOS. (#15871)
* Enable HDR support in iOS.

* Enable HDR support in tvOS.
2023-11-06 00:50:14 -08:00
zoltanvb c42498e531 Warning fixes. (#15877) 2023-11-06 00:04:17 -08:00
sonninnos e7a01dbf67 Silence signedness warning (#15875) 2023-11-05 17:22:11 -08:00
github-actions 55e03b5c3c Fetch translations from Crowdin 2023-11-06 00:11:25 +00:00
zoltanvb aaff36d024 Small fixes for signedness warnings. (#15873) 2023-11-05 15:33:49 -08:00
zoltanvb 701d22d935 PS2 usability fixes (#15861)
- Make sure logs are written before frontend deinit
- Add memory stats
- Add process_args to frontend to fix some cases when salamander cfg was not filled
- Add a missing include in case someone wants to compile for PS2 with HAVE_THREADS
2023-11-05 15:33:17 -08:00
Jamiras b43e1f3caf prevent write-past-end-of-buffer when signed value wraps (#15868) 2023-11-05 15:32:46 -08:00
sonninnos 1a97b0edd4 Savestate thumbnail fixes (#15869) 2023-11-05 15:32:28 -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
Andrew Gorbaty c9de6e5932 fix (#15874) 2023-11-05 15:31:43 -08:00
github-actions 3186b1dce3 Fetch translations from Crowdin 2023-11-05 00:11:58 +00:00
github-actions b703cd94da Fetch translations from Crowdin 2023-11-04 00:11:04 +00:00
Joe OsbornandRob Loach 862bebf687 (Emscripten) Modularize the JavaScript and clean up the web build (#15688)
* Increase emscripten stack size and decrease path size to fix emscripten builds broken since de45fc2

* use modularize flags for better-behaved javascript output

* makefile and loader changes

* use specialHTMLTargets to support modular access to canvas

* bind key events to canvas, not document

This way focus means focus and we can have multiple RA instances in
one page.

* Work around an emscripten bug in strict mode

* (Emscripten) Use console.error() for error messages

* increase asyncify stack size

* Fix `-lm` flag-related compile warnings in emscripten

---------

Co-authored-by: Rob Loach <[email protected]>
2023-11-02 13:25:50 -07:00
Jamiras 8523eaf5c0 [cheevos] upgrade to rcheevos 11.0 (#15859)
* update rcheevos

* update rcheevos
2023-11-02 11:52:36 -07: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
github-actions e6621a4f71 Fetch translations from Crowdin 2023-11-02 00:11:31 +00:00
zoltanvb e7a10b2326 Fallback to screensaver inhibit via D-Bus on Wayland (#15856)
Some Wayland compositors (e.g. Phoc) don't implement Wayland's Idle
protocol. They instead rely on things like Gnome Screensaver.
2023-11-01 11:11:38 -07:00
libretroadmin 4cd68ddfbe (Video processor) C89 buildfix 2023-11-01 03:53:59 +01:00
github-actions 1fb66d8465 Fetch translations from Crowdin 2023-11-01 00:12:27 +00:00
sonninnos 2a51e66120 Log level prefix cleanup (#15852) 2023-10-31 15:52:02 -07:00
zoltanvb 232095797e Set fixed locale for numbers, close to config read/write (#15782)
Move setlocale() closer to config file read/write.
2023-10-31 12:03:24 -07:00
LibretroAdmin 466e82f55d Update sdl2_gfx.c 2023-10-31 12:01:00 -07:00
sonninnos 5a605099c6 Rename '3rd party' to 'third party' (#15851) 2023-10-31 11:58:50 -07:00
LibretroAdmin 249702a2e9 Update Android.mk - define HAVE_ACCESSIBILITY 2023-10-31 10:45:05 -07:00
sonninnos 220caa5143 Remove menu_throttle_framerate option (#15850) 2023-10-31 09:58:47 -07:00
Joe Osborn 3167529fbf increase chunk size for reads/writes under emscripten (#15845) 2023-10-31 07:18:45 -07:00
Viačasłaŭ Chalikin 43105ab5c7 Add Belarusian language option (#15780) 2023-10-31 05:51:57 -07:00
zoltanvb 9d46953fa2 Exclude "System Volume Information" explicitly. (#15833) 2023-10-30 15:33:45 -07:00
Eric Warmenhoven dfeeb031fe Fix mouse support for melondsds on osx (#15837) 2023-10-30 15:33:17 -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
github-actions a61f87ce8e Fetch translations from Crowdin 2023-10-30 00:12:00 +00:00
github-actions a6059473f6 Fetch translations from Crowdin 2023-10-29 00:12:21 +00:00
github-actions 6d1b76964e Fetch translations from Crowdin 2023-10-28 00:10:33 +00:00
github-actions 54805a1827 Fetch translations from Crowdin 2023-10-27 00:11:23 +00:00
sonninnos da59b8c9ac Add 'Frame Rest' power saving option (#15834) 2023-10-26 04:20:48 -07:00
github-actions 4f8e3fabad Fetch translations from Crowdin 2023-10-26 00:11:14 +00:00
GavinDarkglider 5356afc750 Minor fixes to udev input drivers. Add support for canary builds to lakka updater stuff (#15818)
* Input: Udev: Fix touch support building against older kernel headers

* Input: Udev: Fix Touch Deep Debug compile issues

* Input: Joypad: Udev: Joypad: Add Change detection for udev events

This is handy with controllers like the Nintendo Joycons that have a daemon
app in the background to handle combining them into one controller(Joycond)

Since the device was already added, but joycond clamped permissions on evdev
retroarch was never updating the controller input change, this fixes that issue.

Note: Needs a patch in joycond as well, to send change uevent.

This shouldnt cause any issues with other controllers, as the kernel probably
will never send change events for these device types.

* Lakka: Add canary builds to updater
2023-10-25 08:19:00 -07:00
github-actions 535898da0d Fetch translations from Crowdin 2023-10-25 00:11:30 +00:00
sonninnos 06d5cd39fc Set save redirect paths before set_environment (#15820) 2023-10-24 16:20:17 +02:00
Mike EricksonandChenX 7df3ca3064 fix:xinput disconnect lost gamepad (#15819)
Co-authored-by: ChenX <[email protected]>
2023-10-24 00:28:10 -07:00
zoltanvb 57e9a3e876 Fix for "no sound on PS2" (#15827)
Earlier refactor https://github.com/libretro/RetroArch/commit/f121847e00689952df56365f35e3ef1f9a8ece1e
has removed CMD_EVENT_AUDIO_START (and stop), however on PS2 it
causes no sound, so it is added back behind a compiler switch.
2023-10-24 00:27:21 -07:00
Cpod12andXunkar 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 <[email protected]>
2023-10-24 00:27:06 -07:00
github-actions 126cb21177 Fetch translations from Crowdin 2023-10-24 00:11:31 +00:00
github-actions d46ede42dc Fetch translations from Crowdin 2023-10-23 00:11:44 +00:00
github-actions b53bce6877 Fetch translations from Crowdin 2023-10-22 00:12:04 +00:00
github-actions 7011d0c3de Fetch translations from Crowdin 2023-10-17 00:13:29 +00:00
sonninnos f69a29209f Ignore menu event action in the end of function instead (#15811) 2023-10-16 08:45:23 -07:00
sonninnos e3becab18e (Ozone) Thumbnail related fixes (#15810) 2023-10-16 06:56:54 -07:00
Eric Warmenhoven b71d09a31f build fix - ios widget (#15809) 2023-10-16 06:56:45 -07:00
github-actions 2557282ea3 Fetch translations from Crowdin 2023-10-16 00:11:43 +00:00
zoltanvb 0f111e647f Do not exclude browser and config directory settings if RGUI is disabled. (#15803) 2023-10-15 05:47:26 -07:00
Eric Warmenhoven 793cb0cfa3 Fix ios-vulkan-ppsspp, and a small cloud save fix (#15801) 2023-10-15 05:45:03 -07:00
Ophidon ce6a00b495 High Hz Synchronization (#15798)
* High Hz Synchronization

Makes adjustment to driver_adjust_system_rates and related functions to handle Hz skew adjustment for high refresh rates better, especially when using effective refresh modifiers like swap interval or BFI.

* Reorder for Build Fix

Reorder declaration for build fix
2023-10-14 06:57:40 -07:00
Eric Warmenhoven 777d96d20a Clean up iOS/tvOS Xcode project, get the simulators working (#15799) 2023-10-14 06:57:09 -07:00
github-actions 575859e5d7 Fetch translations from Crowdin 2023-10-14 00:10:46 +00:00
Bernhard Schelling d096effe7f When using the new core netpacket interface for netplay, don't synchronize the host SRAM to a joining client (#15797)
Fix netplay connection not getting marked as reusable while the new core netpacket interface is enabled
2023-10-13 10:53:22 -07:00
Eric Warmenhoven a8e6e5db29 Ignore compile_commands.json used by LSP servers (#15795) 2023-10-13 10:29:18 -07:00
Eric Warmenhoven 1247041d05 The default for load_dummy_on_core_shutdown for Apple should be true (#15794) 2023-10-13 10:29:05 -07:00
Eric Warmenhoven b6ee341507 iOS 17/Xcode 15 update: Fix iOS Widget (#15796) 2023-10-13 10:28:56 -07:00
github-actions 0ef36ab15f Fetch translations from Crowdin 2023-10-13 00:11:19 +00:00
Eric Warmenhoven e6e0d07081 iOS: If runloop_iterate returns an error, exit rather than crash. (#15791) 2023-10-12 03:42:48 -07:00
github-actions cb377f8232 Fetch translations from Crowdin 2023-10-12 00:10:01 +00:00
Eric Warmenhoven 7264c13b01 Fix Xcode 14.0.1 cross compile x86_64 build - only strip debugging symbols (#15786) 2023-10-11 03:54:08 +02:00
github-actions c86a25fd66 Fetch translations from Crowdin 2023-10-11 00:11:21 +00:00
libretroadmin 58f7051c61 Fix memory leak in PR #15762 2023-10-10 15:38:07 +02:00
github-actions 21b3baf7bd Fetch translations from Crowdin 2023-10-10 00:11:15 +00:00
github-actions f3c6550597 Fetch translations from Crowdin 2023-10-09 00:11:38 +00:00
github-actions 6e1dc98e24 Fetch translations from Crowdin 2023-10-08 00:12:04 +00:00
github-actions ec0f3af015 Fetch translations from Crowdin 2023-10-07 00:11:04 +00: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
XK 812c003a6a Add support for joining MITM servers over cmdline (#15762)
* Add support for MITM servers over cmdline

* Address https://github.com/libretro/RetroArch/pull/15762#pullrequestreview-1654378806
2023-10-06 02:02:50 -07:00
Cpod12 e7eb588fb6 Fixed text in 16:9 for RGUI not scaling properly (#15768) 2023-10-05 23:18:40 -07:00
github-actions 2be13a59f7 Fetch translations from Crowdin 2023-10-05 00:11:14 +00:00
Joe Osborn 2baf9ec7e0 Enqueue replay record/playback until next frame (#15751)
* Enqueue replay record/playback until next frame

This fixes a bug where stdin commands activated via polling would
trigger replay record/playback in the middle of a frame, then input
checking would pull from them before the next frame came around---it
only makes sense to change the active replay in between frames, not
during them.

* fix comment syntax
2023-10-04 00:53:51 -07:00
github-actions 14cb3732eb Fetch translations from Crowdin 2023-10-01 00:12:39 +00:00
LibretroAdmin 0bbfba8137 Update vfs_implementation.c 2023-09-30 10:41:35 -07:00
greenchili2 fdd5e7cea0 Fix bug that was causing weirdness in Wii builds. (#15752)
Things like the info files not being read.  User defined directories not sticking ( likely not detected ) and all kinds of other goodness.
2023-09-30 10:38:32 -07:00
github-actions f427aaee8f Fetch translations from Crowdin 2023-09-30 00:11:17 +00:00
github-actions 085c2aaf9a Fetch translations from Crowdin 2023-09-29 00:10:50 +00:00
sonninnos 6c2cc45628 Prevent proceeding to next bind when single binding (#15746) 2023-09-28 06:57:20 -07:00
github-actions 5e09d2f3a5 Fetch translations from Crowdin 2023-09-28 00:11:11 +00:00
Rob Loach 0d6577ad07 Update Use Filename setting description (#15741)
The menu item for matching the thumbnails with filenames was just "Use Filename", which isn't that descriptive. This change tweaks it a bit so that the option is a bit more clear.

So happy to have this feature in place.
2023-09-27 05:52:57 -07:00
sonninnos 05ce35b103 Don't process menu events while input is being flushed (#15742) 2023-09-27 05:52:30 -07:00
github-actions 9a57ec29d5 Fetch translations from Crowdin 2023-09-27 00:11:08 +00:00
bulzipke 32ed9b6041 플레이리스트 롬파일 이름으로 썸네일 이미지를 찾도록 옵션 추가 (#15731) 2023-09-26 05:31:59 -07:00
sonninnos ea86be0a2b Fix menu analog stick navigation (#15740) 2023-09-26 05:30:15 -07:00
github-actions 5dfae519ce Fetch translations from Crowdin 2023-09-26 00:11:01 +00:00
github-actions 9d67cc92c8 Fetch translations from Crowdin 2023-09-25 00:11:34 +00:00
github-actions 712b9350a5 Fetch translations from Crowdin 2023-09-23 00:10:31 +00:00
LibretroAdmin a2b8504363 Update default.txt 2023-09-22 13:37:26 -07:00
github-actions 041ae30103 Fetch translations from Crowdin 2023-09-21 00:11:17 +00:00
Eric Warmenhoven ef12e43522 Fix reading past the end of an allocated buffer. (#15713)
title_length is originally calculated to be the msg length, but later
if the task has a title then that is used instead, but the length is
not updated. If msg is longer than title, we read past the end of the
buffer.
2023-09-20 10:50:35 -07:00
Bernhard Schelling f33f5e2b87 UWP: Handle key presses while ALT is held down (#15680)
Also release held keys when unfousing the window (properly handle ALT+Tab on desktop)
UWP input event code cleanup
2023-09-19 06:09:58 -07:00
Giovanni Cascione c3a18e0469 Fix string_options_entries size for drivers settings list (#15710) 2023-09-18 16:53:41 -07:00
LibretroAdmin db2dc7a7de Update CHANGES.md 2023-09-17 22:06:05 -07:00
LibretroAdmin a680bf2fa4 Update CHANGES.md 2023-09-17 21:59:48 -07:00
github-actions 90521927ba Fetch translations from Crowdin 2023-09-17 00:12:13 +00:00
sonninnos c5b2ed1382 More runloop menu state checking (#15700) 2023-09-15 17:20:27 -07:00
Giovanni Cascione c5b18b189a Fix use of sizeof with const char pointers (#15705) 2023-09-15 17:19:42 -07:00
github-actions cbcb5df52a Fetch translations from Crowdin 2023-09-16 00:10:05 +00:00
github-actions 903f540c05 Fetch translations from Crowdin 2023-09-15 00:11:04 +00:00
Eric Warmenhoven 6e453b5ba0 Avoid crash if ozone sidebar_index_size is 0 (#15693) 2023-09-14 09:11:07 -07:00
Eric Warmenhoven c5f6175f12 Avoid a crash if there is no backed up config file on tvOS (#15694) 2023-09-14 09:11:00 -07:00
Eric Warmenhoven a8a33cf3c4 Fix accidental left/right keypresses on tvOS (#15696) 2023-09-14 09:10:49 -07:00
sonninnos b2790ca79c Prevent stale menu state in runloop check (#15698) 2023-09-14 09:09:45 -07:00
github-actions 72841d6637 Fetch translations from Crowdin 2023-09-13 00:10:51 +00:00
sonninnos cf2ee94c9f Correction for not showing mouse cursor with overlay (#15687) 2023-09-11 17:28:33 -07:00
github-actions ba1833de07 Fetch translations from Crowdin 2023-09-12 00:10:53 +00:00
github-actions a43494e9bb Fetch translations from Crowdin 2023-09-11 00:11:33 +00:00
github-actions 433989259e Fetch translations from Crowdin 2023-09-10 00:11:39 +00:00
sonninnos ca7231f47c (Ozone) Prevent metadata and footer overlap (#15677) 2023-09-07 13:41:05 -07:00
github-actions f565879d5b Fetch translations from Crowdin 2023-09-07 00:11:04 +00:00
libretroadmin 3718fed79d Buildfix 2023-09-06 03:16:47 +02:00
sonninnos 0eeb9f918e Fraction setting wraparound rounding correction (#15676) 2023-09-05 18:14:04 -07:00
libretroadmin bef29c466b Remove unneeded video_driver_set_gpu_device_string/get_gpu_device_string 2023-09-06 03:08:48 +02:00
libretroadmin 89376e3c41 Do away with one temp buffer 2023-09-06 02:50:56 +02:00
libretroadmin 050996ab0f Rewrite some strlcats 2023-09-06 02:37:24 +02:00
github-actions b1b8f23169 Fetch translations from Crowdin 2023-09-06 00:11:02 +00: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 553e30495b Remove unused variables 2023-09-05 14:55:39 +02:00
sonninnos 7661bde711 Count audio samples in stats when rate control is disabled (#15669) 2023-09-05 05:35:57 -07:00
github-actions 5b2ed5c9ee Fetch translations from Crowdin 2023-09-04 00:11:01 +00:00
sonninnos 8a510451f2 (Ozone) Sublabel scope test (#15670) 2023-09-03 15:20:45 -07:00
sonninnos 4d0110b278 Use refresh rate instead of core fps for frameskip timing (#15666) 2023-09-03 09:53:00 -07:00
Colin Kinloch 320ba73f90 Wayland: Get system wayland-protocols path via pkg-config (#15668) 2023-09-03 09:48:11 -07:00
libretroadmin 88437ca5a6 Rewrite input_state_get_last somewhat 2023-09-03 17:41:41 +02:00
libretroadmin dd3ceb40e9 Style nits 2023-09-03 17:37:00 +02:00
github-actions d1ea3b5d9c Fetch translations from Crowdin 2023-09-03 00:11:23 +00:00
libretroadmin bc91eb6ceb Cut down on some strlens for xdk 2023-09-03 00:04:25 +02:00
libretroadmin c2b81881ae Cleanups 2023-09-02 16:42:49 +02:00
sonninnos b89a750d43 (Ozone) Revert minimum font size enforcements (#15663) 2023-09-02 05:36:51 -07:00
github-actions 2e720fd9c1 Fetch translations from Crowdin 2023-09-02 00:10:19 +00:00
sonninnos ea1bdade61 Allow more keyboard actions with menu osk (#15662) 2023-09-01 15:48:55 -07:00
sonninnos 078df8ba39 (Ozone) Sublabel width tweak (#15657) 2023-09-01 02:25:33 -07:00
github-actions 7f49094635 Fetch translations from Crowdin 2023-09-01 00:11:43 +00:00
Rob Loach 3d484ec60e (Language) Fix comments 2023-08-31 15:10:59 -04:00
Rob Loach a45ca11b10 (Language) Fix language detection in Canada to English
Canada's default language is often picked up as `en_CA.UTF-8`, which inadvertently gets discovered as `ca`, or Catalan. This means that if you're in Canada, you would end up getting Catalan as your default language.

Adding `en_CA` to the language list as British English fixes the language detection for Canadians. This must be indexed above Catalan's `ca` so that it uses English instead of Catalan.
2023-08-31 15:06:06 -04:00
github-actions 77ca6f7566 Fetch translations from Crowdin 2023-08-31 00:10:51 +00:00
libretroadmin b5887d9857 change bsv_key_data back in case struct layout matters 2023-08-30 18:20:58 +02:00
libretroadmin 712b821f78 Reorder 2023-08-30 11:11:04 +02:00
libretroadmin c82401dcb4 input_device_info - slim down - we don't need config_path and some of
the char arrays can be much smaller
2023-08-30 08:34:21 +02:00
libretroadmin 94accbb6ef Nits 2023-08-30 06:36:38 +02:00
github-actions 688f76f81d Fetch translations from Crowdin 2023-08-30 00:10:57 +00:00
yoshisuga 437ed733f5 Fixed compiler flag check for swift (#15654) 2023-08-29 03:30:52 -07:00
GABO1423 f654d1bf30 (UWP/Menu) Small Tweaks (#15653) 2023-08-28 20:53:35 -07:00
greenchili2 bb581e6cbe Fix modifier keys ( shift, ctrl, alt ) as well as F10 not being detected on the UWP platform. (#15651)
* Update uwp_main.cpp

Fix modifier keys ( shift, ctrl, alt ) as well as F10 not being detected on the UWP platform.

* Update uwp_main.h

Fix modifier keys ( shift, ctrl, alt ) as well as F10 not being detected on the UWP platform.
2023-08-28 19:28:39 -07:00
sonninnos 600beba18b Check menu toggle before menu event (#15646) 2023-08-27 15:48:47 -07:00
GABO1423 01662ec228 (UWP) Small Tweaks (#15647) 2023-08-27 15:48:39 -07:00
github-actions 89a67e588b Fetch translations from Crowdin 2023-08-27 00:11:53 +00:00
github-actions 83ae1876b2 Fetch translations from Crowdin 2023-08-26 00:09:37 +00:00
sonninnos 2623f8d085 (XMB+Ozone) Animation corrections (#15645) 2023-08-25 13:02:19 -07:00
github-actions 2bb955fe19 Fetch translations from Crowdin 2023-08-25 00:11:19 +00:00
github-actions 1fd792b13b Fetch translations from Crowdin 2023-08-24 00:11:11 +00: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
github-actions 4f0c756514 Fetch translations from Crowdin 2023-08-23 00:11:12 +00:00
sonninnos ab1e5c37ca Add PAL threshold option for automatic refresh rate switch (#15636) 2023-08-22 14:56:15 -07:00
yoshisuga 6b0a5c978e tvOS: Add target conditionals to fix tvOS build (#15637)
* Add target conditionals to fix tvOS build

* Use TARGET_OS_IOS for iOS
2023-08-22 14:55:59 -07:00
sonninnos 34b71339de Configuration 'populate_settings_*' cleanup (#15635) 2023-08-22 08:34:29 -07:00
sonninnos 5533f3881f Prevent directory creation on bogus thumbnail downloads (#15634) 2023-08-21 23:07:38 -07:00
sonninnos 785ff20437 Menu value label cleanup (#15632) 2023-08-21 23:07:16 -07:00
yoshisuga cb2cc58f98 iOS: Support a helper bar button to lock the current orientation (#15633)
* iOS: Support a helper bar button to lock the current orientation

* Moved init of shouldLockCurrentInterfaceOrientation property to iOS specific #if
2023-08-21 23:05:34 -07:00
github-actions cf9947b7c7 Fetch translations from Crowdin 2023-08-22 00:11:08 +00: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
github-actions a6435775e4 Fetch translations from Crowdin 2023-08-21 00:10:38 +00:00
sonninnos b782111025 Move 'systemfiles_in_content_dir' from Saving to Core (#15629) 2023-08-20 14:56:41 -07:00
sonninnos 213060a00a Allow launching built-in cores with '-L' (#15627) 2023-08-20 12:39:18 -07:00
zoltanvb 7a475c7195 Remove some temporary buffers (#15624) 2023-08-20 10:59:15 -07:00
libretroadmin 10c60cdd4d Rewrite retro_vfs_file_remove_impl 2023-08-20 05:36:03 +02:00
libretroadmin d167c4f62e (PSL1GHT) Buildfix 2023-08-20 04:56:19 +02:00
libretroadmin a9733ab418 (VFS/libretro-common) Cleanups 2023-08-20 04:29:42 +02:00
libretroadmin 8debf4b88e (wiiu_joypad.c) Small cleanups 2023-08-20 04:06:48 +02:00
github-actions 2b3bfbe89a Fetch translations from Crowdin 2023-08-20 00:11:22 +00:00
Jamiras e3d64ab118 prevent frame step when hitting rewind button while paused in hardcore (#15622) 2023-08-19 12:43:15 -07:00
github-actions a8ed353ce4 Fetch translations from Crowdin 2023-08-19 00:09:29 +00:00
sonninnos 741ff766ea Change default playlist last played time format (#15618) 2023-08-18 15:33:59 -07:00
sonninnos eb0124d6d7 (WASAPI) More logging cleanups (#15619) 2023-08-18 15:33:47 -07:00
sonninnos c512e02cc0 (Ozone) Mouse hover selection fix (#15615) 2023-08-18 12:38:45 -07:00
sonninnos 3246bc6655 Add visibility option for save state notifications (#15616) 2023-08-18 12:38:36 -07:00
sonninnos c708187cd2 Search box usability improvements (#15617) 2023-08-18 12:38:29 -07:00
Jamiras ee7735f82e still call callback on network error (#15614) 2023-08-17 18:29:46 -07:00
github-actions ede69b4b6b Fetch translations from Crowdin 2023-08-18 00:11:54 +00:00
sonninnos e220e8d234 'Updater Settings' relocation (#15613) 2023-08-17 15:28:45 -07:00
Ryunam c5c86fe5e8 Allow all systems to check for backslashes (Windows) as last slash in path. Improves portable core logic (#15612) 2023-08-17 14:15:42 -07:00
libretroadmin 24287b1cce Cleanups/simplifications 2023-08-17 21:58:41 +02:00
sonninnos ed4e7abeb1 Reinit after updating autoconf profiles (#15611) 2023-08-17 11:50:10 -07:00
libretroadmin 9ae1a5fbee Simplify _PSUPP_BUF and make it not use strlen 2023-08-17 19:14:31 +02:00
libretroadmin f53ada6489 Cleanups, style nits, try to reduce some more strlens, etc. 2023-08-17 18:20:45 +02:00
sonninnos 0dafa3ca1a Reorganize settings menu (#15610) 2023-08-17 08:38:52 -07:00
metallic77 0cc88ed079 Add files via upload (#15609) 2023-08-17 06:12:35 -07:00
Eric Warmenhoven db39d78b8c cloudsync: Don't sync playlists (#15608) 2023-08-16 22:04:55 -07:00
sonninnos 408d5cdd28 Reorganize 'Saving' menu (#15607) 2023-08-16 18:08:08 -07:00
sonninnos c44e2d46d9 (XMB) Message/help box adjustments (#15606) 2023-08-16 18:07:51 -07:00
github-actions fa444fc9ed Fetch translations from Crowdin 2023-08-17 00:10:49 +00:00
Jamiras 58f547bfe1 disallow video_swap_interval and black_frame_insertion in hardcore (#15605) 2023-08-16 14:17:54 -07:00
libretroadmin c5088ce2ca Silence some warnings and general cleanups 2023-08-16 22:08:01 +02:00
libretroadmin e5ef309b58 get_bind_string_joyaxis - small simplification 2023-08-16 20:29:40 +02:00
libretroadmin d6ae25d980 Don't add to len variable if not used 2023-08-16 20:26:15 +02:00
sonninnos de45fc2f5f Input binding rework (#15603)
* Input binding rework

* Controller info logging cleanup
2023-08-16 11:13:14 -07:00
libretroadmin 4dd3b022f1 (CTR) Cut down on runloop_get_flags calls 2023-08-16 19:53:59 +02:00
libretroadmin c6c7c343df video_frame_info - more flags 2023-08-16 19:47:24 +02:00
libretroadmin bc41e0fdf4 video_frame_info - start passing flags 2023-08-16 19:17:23 +02:00
hunterk 538aa5235c fix broken discord invite (#15602)
the old invite had expired, i guess? closes https://github.com/libretro/RetroArch/issues/15568
2023-08-16 08:55:27 -07:00
libretroadmin 5f94f36204 Explicit typecasts to bool 2023-08-16 17:10:59 +02:00
libretroadmin 1b128c61d6 Cut down on one additional strlen call 2023-08-16 16:07:53 +02:00
libretroadmin e407d9a7b2 (Udev) style nits/cleanups 2023-08-16 15:45:50 +02:00
GABO1423 1ccb049ecb (UWP) Update x64 ANGLE Files (#15600) 2023-08-16 05:59:01 -07:00
Max Kupriianov 2f16e115a7 [android] fix d-pad regression introduced in abcd42777f (#15601) 2023-08-16 05:58:44 -07:00
libretroadmin 0a96f9595c Explicit typecasts to bools for flags 2023-08-16 04:18:55 +02:00
libretroadmin f51b49f213 More explicit typecasts to bools 2023-08-16 03:22:02 +02:00
libretroadmin cb0653137f Style nits/cleanups 2023-08-16 02:40:59 +02:00
libretroadmin c699e47534 Small style nits and plain sense cleanups 2023-08-16 01:14:50 +02:00
libretroadmin 797c7ff381 Some more explicit typecasts to bools 2023-08-16 00:33:59 +02:00
libretroadmin dadb5a6f41 Explicit typecasts to bool 2023-08-16 00:21:19 +02:00
libretroadmin bd7a0f7f0a Explicit typecast to bool for some flag to bool conversions 2023-08-16 00:16:03 +02:00
vailkyte 139d7f3836 MSVC2010 - fix invisible menu display on winxp (#15599)
Explicit typecast to bool
2023-08-15 15:00:13 -07:00
libretroadmin 3862069cb7 (Qt) Small cleanups 2023-08-15 23:58:54 +02:00
Max Kupriianov abcd42777f refactor: rewrite input handling to better support AINPUT_SOURCE_STYLUS (#15597)
Resolves issues with S-Pen on Samsung devices, also adds support for S-Pen button
that is handled as r-mouse click now.
2023-08-15 11:13:53 -07:00
libretroadmin 2d2cb04589 Merge video_coord_array.c into video_driver.c 2023-08-15 16:02:12 +02:00
libretroadmin 40a0ced947 Be consistent with frontend_driver_get_core_extension - core extension
var should at most be 16 chars big, make only one exception once
2023-08-15 15:01:57 +02:00
libretroadmin 1765d491d1 Some minor cleanups - use size_t for return value of strlen,
extensions don't need 256-char arrays, etc.
2023-08-15 14:54:13 +02:00
libretroadmin f34481c332 Fix linking issue when building with --disable-menu 2023-08-15 14:44:54 +02:00
ScoochAsideandmiguedevel 2f9c4ebea2 Fix issue #15595. (#15596)
Co-authored-by: miguedevel <[email protected]>
2023-08-15 05:36:34 -07:00
GABO1423 f3e5bb9e06 (UWP) Build Flag Tweaks (#15594) 2023-08-14 17:40:14 -07:00
sonninnos d5c09b65e0 Don't write bogus thumbnails to disk (#15593) 2023-08-14 17:29:53 -07:00
github-actions 187af501ed Fetch translations from Crowdin 2023-08-15 00:10:50 +00:00
libretroadmin af03e555d6 Fix - should look for these headers in system directories 2023-08-14 23:39:15 +02:00
libretroadmin c8e6506687 Fix --disable-menu errors 2023-08-14 23:36:19 +02:00
Eric Warmenhoven ae78395d83 iOS/tvOS: rework JIT availability checks (#15590) 2023-08-14 06:41:43 -07:00
github-actions 946c198e7b Fetch translations from Crowdin 2023-08-14 00:11:17 +00:00
github-actions 89e7e74315 Fetch translations from Crowdin 2023-08-13 00:10:53 +00:00
Jesse Talavera-Greenberg 954b04669c Add an environment call for querying the device's battery (#15387)
* First crack at RETRO_ENVIRONMENT_GET_POWER_STATUS

* First crack at RETRO_ENVIRONMENT_GET_POWER_STATUS

* Remove a stray comma

* Rename some symbols for clarity

* Change some references to the old environment call's name

* Fix some mixed-up cases in checking the power state

- I misunderstood the meaning of these enums

* Add a comment

* Rename seconds_remaining to seconds

* Clarify some comments about the power state

* Adjust power state behavior

- Don't return 0 seconds; instead, return NO_ESTIMATE
- Don't force percent to 100 in the CHARGED state

* Adhere to C89

* Mention the environment call in CHANGES.md
2023-08-12 16:41:05 -07:00
Eric Warmenhoven ee75111a48 iOS/tvOS: Compile with -DHAVE_CHD (#11099) (#15588) 2023-08-12 16:33:32 -07:00
libretroadmin 5f79c13928 Small cleanups 2023-08-12 18:59:29 +02:00
Cpod12 904e9fbe1d Added 21:9 as an option to RGUI (#15572)
* added 21:9 as an option to RGUI

* reverted files that weren't supposed to be changed

* fixed issue with 21:9 not showing in the menu and corrected buffer width
2023-08-12 05:51:12 -07:00
Eric Warmenhoven 6dee7225f3 webdav: HTTP 405 is an acceptable error (#15583) 2023-08-12 05:47:07 -07:00
zoltanvb 7198f10875 Remove a needless temporary buffer from runtime_log_get_runtime_str() (#15585) 2023-08-12 05:47:00 -07:00
zoltanvb b554d7e26c Removal of remaining msg_hash_xx.c files (#15586)
Followup for PR#15218, remove the two remaining files and simplify
a few functions in msg_hash.c as a result.
2023-08-12 05:46:35 -07:00
zoltanvb 0c64a07cdb Fix runtime display. (#15581)
Due to an error in 631301b3f7, the
runtime display string was working well only when the label had
a length of 7. Even the English "Runtime:" was a bit truncated
as a space was supposed to be added after the :, but it was
even more noticeable in other languages.
2023-08-11 14:16:50 -07:00
sonninnos 6733d6da57 Revert network address information trimming (#15573) 2023-08-11 07:17:53 -07:00
sonninnos d8f9310100 (DINPUT) Mouse flag cleanup (#15575) 2023-08-11 07:17:07 -07:00
github-actions 717f79773c Fetch translations from Crowdin 2023-08-11 00:10:29 +00:00
Joe Osborn 679083a08b Graceful fallback to readonly mode if RDB can't be opened readwrite (#15569)
* Graceful fallback to readonly mode if RDB can't be opened readwrite
* let RA open db readonly
2023-08-10 11:04:47 -07:00
GABO1423 d0d1321ac1 (UWP) Remove ARM/ARM32 Build Configuration (#15564) 2023-08-09 01:39:05 -07:00
GABO1423 0a510d7055 (UWP) Fix d3d12 Driver in Debug Builds (#15567) 2023-08-09 01:37:20 -07:00
github-actions 09e471931d Fetch translations from Crowdin 2023-08-09 00:12:34 +00:00
Eric Warmenhoven 3ef31d2eee cloud sync: clean up directory/filename mapping, log errors (#15561) 2023-08-07 20:43:22 +02:00
github-actions fa80e5e6be Fetch translations from Crowdin 2023-08-07 00:12:40 +00:00
Joe Osborn f4ed975d44 Force async emscripten when HAVE_AL (#15559) 2023-08-07 01:20:59 +02:00
Eric Warmenhoven fcedac5d0d strlen -> STRLEN_CONST, fix warning (#15555) 2023-08-06 09:17:47 +02:00
sonninnos f1c144ea50 (XMB) Color + background adjustments (#15556)
* (XMB) Color + background adjustments

* (XMB) Improve font selector
2023-08-06 09:17:38 +02:00
github-actions 796fa81909 Fetch translations from Crowdin 2023-08-06 00:11:55 +00:00
sonninnos 0db5c65461 Appearance menu cleanup (#15554) 2023-08-05 17:00:25 +02:00
Eric Warmenhoven 599eda1ece webdav - Fix directory creation when using Digest auth (#15551) 2023-08-05 14:01:21 +02:00
Eric Warmenhoven 20f48ea800 cloud sync - fix a couple manifest management bugs (#15552) 2023-08-05 13:59:10 +02:00
github-actions d33758ad45 Fetch translations from Crowdin 2023-08-05 00:11:33 +00:00
sonninnos 0f0a522a0c Always show 'Integer Scale Overscale' menu item (#15546) 2023-08-04 09:21:02 +02:00
Eric Warmenhoven 893b0d142e Cloud Sync (#15548)
* cloud sync - algorithm and abstract cloud storage API

* WebDAV cloud sync driver, and associated net_http improvements

* Cloud sync settings menu
2023-08-04 09:20:50 +02:00
sonninnos 45af11efe9 Fix menu sounds after loading core (#15539) 2023-08-03 13:40:40 +02:00
gouchi 502db576d6 Add ReactOS to the list of supported operating systems (#15542)
https://nitter.net/reactos/status/1481883782944677888#m
2023-08-03 13:40:31 +02:00
github-actions 18a76ebb4e Fetch translations from Crowdin 2023-08-03 00:11:32 +00:00
github-actions b414388224 Fetch translations from Crowdin 2023-08-02 00:11:21 +00:00
sonninnos 5004e38fb9 (RGUI) Add 'Auto' aspect ratio (#15538) 2023-08-01 06:35:29 +02:00
sonninnos dbdcf1482e Show also lightgun bind labels instead of only 'N/A' (#15535) 2023-07-31 05:12:21 +02:00
neil4 0b9e5975f5 (Android) Only update retroarch.cfg on startup if version changed (#15536) 2023-07-31 05:11:59 +02:00
github-actions 073922119b Fetch translations from Crowdin 2023-07-31 00:12:29 +00:00
sonninnos cf42a200b4 (WIN32) Fix Pause vs NumLock in dinput/sdl2 (#15533) 2023-07-30 09:50:08 +02:00
neil4 fbd8498686 Overlays: Apply range_mod only for the touch inputs that trigger it (#15534) 2023-07-30 09:49:59 +02:00
github-actions e6aba004a6 Fetch translations from Crowdin 2023-07-30 00:12:31 +00:00
sonninnos 62f3840e38 Prevent left-right hold in boolean menu items (#15530) 2023-07-29 04:59:59 +02:00
Jamiras e1c366317a allow callback to look at response BODY even when HTTP status code indicates failure (#15532) 2023-07-29 04:59:44 +02:00
Subs 62e6439329 [CRT] Update switchres (new PR) (#15526)
* Remove deps/switchres to update it right after

* Squashed 'deps/switchres/' content from commit 4df022c68a

git-subtree-dir: deps/switchres
git-subtree-split: 4df022c68a43b6481e18d5aa8e0ea27481291d1a
2023-07-28 01:39:39 +02:00
Joseph C. Osborn 05b14ec3e4 fix c89 build 2023-07-28 00:34:52 +02:00
Joseph C. Osborn 389ed2a5e3 Fix index creation and lookup logic 2023-07-28 00:34:52 +02:00
sonninnos f121847e00 Don't stop audio on menu toggle 2023-07-27 22:15:58 +02:00
sonninnos 376e47f99a CLI dbscan reinit flag correction 2023-07-27 02:20:30 +02:00
sonninnos 95cb3383d9 Log initial core av_info 2023-07-27 02:20:21 +02:00
github-actions 4f97872d02 Fetch translations from Crowdin 2023-07-27 00:11:14 +00:00
sonninnos e258235459 Save 'overwrite_playlist' to manual scan playlist 2023-07-26 15:57:49 +02:00
sonninnos 9af0d5f5ef Remove microphone driver disabled logging 2023-07-25 19:47:09 +02:00
zoltanvb 5d94bb36fb Recalculate animation end position if layout changes after start. 2023-07-25 10:18:01 +02:00
sonninnos 1805484a6f Playlist + Explore corrections + cleanups 2023-07-24 17:59:23 +02:00
github-actions 1b23ed1f00 Fetch translations from Crowdin 2023-07-24 00:12:40 +00:00
github-actions 62cc2431b3 Fetch translations from Crowdin 2023-07-22 00:11:37 +00:00
sonninnos 18414cf526 (Android) Reduce default menu scale 2023-07-21 22:32:01 +02:00
Colin Kinloch 2cb787c5bf (Wayland) Apply output scale to touch inputs 2023-07-21 22:31:51 +02:00
github-actions 2f7b330edc Fetch translations from Crowdin 2023-07-21 00:11:47 +00:00
sonninnos 8bdf0e157d Shader preset save fix + cleanup 2023-07-20 17:44:43 +02:00
sonninnos a821b13b13 Fix window title after video reinit 2023-07-20 14:36:55 +02:00
sonninnos 663817bc1f Reorder Input Settings menu 2023-07-20 10:28:15 +02:00
github-actions 4102fb3ba3 Fetch translations from Crowdin 2023-07-20 00:12:06 +00:00
Eric Warmenhoven 286ce51277 iOS: use haptic engine instead of feedback generator for device rumble 2023-07-19 22:13:35 +02:00
sonninnos 2d66b5f863 Add separate sublabel for remap port controls 2023-07-19 22:13:15 +02:00
Rob Loach 1056e8cbca ozone: Tweak Dracula colours a bit 2023-07-18 21:26:31 +02:00
sonninnos c798cbaf3f Enable overlay by default only on mobile + winraw overlay fix 2023-07-18 21:26:23 +02:00
libretroadmin 9337facd49 Some style nits + cleanups 2023-07-18 17:07:36 +02:00
libretroadmin 770b9920f5 Cleanups:
* No implicit memsets for texture_image
* Replace some calls with concatenated strlcpys
* Some style nits
2023-07-18 16:46:54 +02:00
sonninnos 27d5152247 Explore menu usability improvements 2023-07-18 15:59:32 +02:00
sonninnos 459fa1b838 (WIN32) Fix startup windowed scale 2023-07-18 13:34:36 +02:00
sonninnos 4f747d366a (XMB) Entry index cleanup 2023-07-18 13:16:25 +02:00
github-actions 4c827a3f12 Fetch translations from Crowdin 2023-07-18 00:15:43 +00:00
LibretroAdmin aa7b82e82d Update CHANGES.md 2023-07-18 00:36:00 +02:00
libretroadmin 2eee87f714 (Vulkan) Cleanups 2023-07-18 00:08:55 +02:00
sonninnos ed9e1064bb (XMB) Explore list thumbnail + ticker fixes 2023-07-17 23:48:07 +02:00
sonninnos 0a843e8624 (XMB) Playlist entry index fix 2023-07-17 23:48:07 +02:00
sonninnos f67912bfa8 Move playlist manager core association options downwards 2023-07-17 23:48:07 +02:00
sonninnos f567c45869 Improve 'Set Core Association' menu 2023-07-17 23:48:07 +02:00
libretroadmin 11d5775318 (D3D12) Get rid of some implicit memsets 2023-07-17 23:45:34 +02:00
libretroadmin 62e4779fee (D3D12) Get rid of some implicit memsets 2023-07-17 23:12:40 +02:00
libretroadmin ae4e5d34f8 Get rid of some implicit memsets 2023-07-17 19:51:18 +02:00
libretroadmin 8aa0679cbd Fix regression 2023-07-17 17:49:49 +02:00
libretroadmin 55996bc9b6 Silence warnings 2023-07-17 17:43:50 +02:00
libretroadmin f8bda96fa4 (Vulkan) Get rid of some implicit memsets 2023-07-17 17:30:17 +02:00
libretroadmin 1743e8244b Avoid some implicit memsets 2023-07-17 16:53:46 +02:00
LibretroAdmin 6378a3aea2 Update index.html (Emscripten) - Remove banner 2023-07-17 15:46:22 +02:00
libretroadmin 7105e0508c Fix compilation issue for some platforms 2023-07-17 15:30:56 +02:00
libretroadmin f1c651053f - Use VK_FALSE/VK_TRUE consistently for Vulkan structts
- Some minuscule changes to file_path.c
2023-07-17 15:27:34 +02:00
libretroadmin a5f2903253 Simplify path_basename 2023-07-17 15:13:13 +02:00
libretroadmin d26c4e52b3 Fix history download thumbnail issue 2023-07-17 15:06:29 +02:00
libretroadmin 35936e20c7 Fix DISPLAYLIST_ARCHIVE_ACTION 2023-07-17 13:07:41 +02:00
libretroadmin a4b81527e0 Bump version 2023-07-17 12:46:49 +02:00
sonninnos 96bb0bee55 (XMB) Playlist label limit fixes 2023-07-17 12:28:44 +02:00
libretroadmin 4a411eb1e5 Cut down on strlcats and use strftime return value 2023-07-17 11:26:48 +02:00
libretroadmin 40049274b2 string_list_join_concat - cut down on one strlcat 2023-07-17 10:33:01 +02:00
libretroadmin fe1297cc33 (file_path.c) Cut down on some strlcats 2023-07-17 10:09:34 +02:00
libretroadmin aeff636a0f Minor cleanups to config_file.c 2023-07-17 09:45:52 +02:00
github-actions 6651fcb92b Fetch translations from Crowdin 2023-07-17 00:14:41 +00:00
libretroadmin 5e614ea19c Update 2023-07-16 23:04:53 +02:00
libretroadmin 35c512d5ba Get rid of some impicit memsets 2023-07-16 22:51:09 +02:00
libretroadmin 6e06f14180 Cut some more strlcat calls 2023-07-16 22:21:43 +02:00
libretroadmin 07f22270f7 (video_crt_switch.c) C89 build fixes 2023-07-16 20:50:35 +02:00
libretroadmin eb01ce0c09 Simplify archive_file 2023-07-16 19:55:58 +02:00
libretroadmin 4b6bd83780 Replace some more strlcat calls 2023-07-16 18:33:34 +02:00
libretroadmin bd090dea71 Replace more strlcat calls 2023-07-16 18:07:49 +02:00
libretroadmin d15de21da5 Cleanups 2023-07-16 17:14:10 +02:00
libretroadmin ba492e9614 Move thumbnail_path_data to menu_st - cut down on code duplication in
menu_drivers
2023-07-16 09:46:08 +02:00
libretroadmin c72bcd96e9 Buildfix 2023-07-16 08:12:05 +02:00
libretroadmin be65a13102 Cut down on update_title code duplication 2023-07-16 08:00:49 +02:00
github-actions d53b397b48 Fetch translations from Crowdin 2023-07-16 00:15:21 +00:00
Rob Loach 62af42a182 ozone: Update Dracula theme 2023-07-15 22:34:17 +02:00
libretroadmin 4aa2ac3945 Cleanups - turn some functions static, some variable removals 2023-07-15 22:28:45 +02:00
libretroadmin 3c1e64129e Cutdown on some strlens 2023-07-15 19:35:19 +02:00
libretroadmin f39f1f6ff2 Make sure core_info_find is called first before using the data struct 2023-07-15 16:00:48 +02:00
libretroadmin 5b52dd4965 Fix crash - core_info_find has to come first 2023-07-15 15:54:49 +02:00
libretroadmin 9fc1229bb1 replace some strlcats with strlcpy 2023-07-15 15:37:26 +02:00
libretroadmin e1af98cc43 Cleanups/some code duplication removal 2023-07-15 15:14:26 +02:00
libretroadmin 2785d2d74b Rewrite create_string_list_rdb_entry_{string|int} 2023-07-15 14:02:12 +02:00
libretroadmin 19ae344141 Cut down on more implicit strlens 2023-07-15 10:21:50 +02:00
libretroadmin 3f84724106 Fix typo 2023-07-15 09:56:07 +02:00
libretroadmin 947249ac25 Cut down on more strlens 2023-07-15 09:52:47 +02:00
libretroadmin 74959de48e Silence warning 'rv might be uninitialized' 2023-07-15 09:28:21 +02:00
libretroadmin 98ee9a753c Cut down on some implicit strlens 2023-07-15 09:10:16 +02:00
Eric Warmenhoven b1fdbb9a37 netplay discovery through bonjour/mdns 2023-07-15 08:25:27 +02:00
libretroadmin a33ec20c21 Silence warning 2023-07-15 07:55:04 +02:00
libretroadmin cd8fffe5d3 Rename all local variables for retro_system_info to sysinfo 2023-07-15 07:45:20 +02:00
libretroadmin cf0d0e93a6 rarch_system_info_t local vars should be renamed from 'system'
to 'sys_info' to avoid false positive code analysis errors
2023-07-15 07:22:38 +02:00
libretroadmin 2acaa1f888 Fix cast warning 2023-07-15 06:30:26 +02:00
sonninnos ab4debec01 All Users Control Menu fixes 2023-07-15 06:28:51 +02:00
Ethan O'Brien 71fe2624d2 Cleanup 2023-07-14 21:24:15 +02:00
Ethan O'Brien 5a1f20a999 Cleanup 2023-07-14 21:24:15 +02:00
Ethan O'Brien 24b410476b Fix emscripten sleep 2023-07-14 21:24:15 +02:00
Ethan O'Brien e5c0ab17e4 Make openal default audio driver 2023-07-14 21:24:15 +02:00
libretroadmin 20f151d42e menu_displaylist_parse_playlist - avoid some implicit strlens 2023-07-14 18:25:33 +02:00
libretroadmin 9e34f22a29 Silence Xcode code warnings + general cleanups 2023-07-14 18:05:54 +02:00
sonninnos 227a9ec34a Allow adjusting screenshot flash without notification enabled 2023-07-13 17:02:33 +02:00
github-actions 4e849fa49e Fetch translations from Crowdin 2023-07-13 00:13:23 +00:00
github-actions ebd9f2a8d1 Fetch translations from Crowdin 2023-07-11 00:14:46 +00:00
Vlad Cuciureanu 2adca0f33c Fix typo in Emscripten README.md 2023-07-11 01:03:29 +02:00
Eric Warmenhoven 123b218725 Revert "Compile in CoreText font renderer on macos/ios/tvos"
This reverts commit 9320122252.
2023-07-11 01:03:14 +02:00
github-actions 54f542a3da Fetch translations from Crowdin 2023-07-10 00:13:27 +00:00
nfore 12fc237351 Add default keyboard overlay directory to platform_darwin 2023-07-09 22:51:31 +02:00
Eric Warmenhoven e943ea71e7 Fix #15459 - add HAVE_STDIN_CMD to macos 2023-07-09 09:31:08 +02:00
nfore bf0de45ec4 Build fix 2023-07-09 09:30:48 +02:00
nfore 9ca5c5e623 Revive/rewrite Keyboard Overlay and OSK Toggle
Add keyboard overlay preset, keyboard submenu, and osk_toggle hotkey. Use overlay caching for osk_toggle.

For now, keyboard menu has only preset path, auto-scale toggle, and opacity.

Related fixes:
- input_keyboard_event: Don't check hotkey binds when device is RETRO_DEVICE_POINTER
- Add input_keymaps_translate_rk_to_ascii() for correct character input to input_keyboard_event
- input_overlay_poll: Delay clearing INPUT_OVERLAY_BLOCKED flag until there is no overlay input (Avoids stray input after osk_toggle)
- Send keyboard events for modifiers before other keys (for correct modifier+key input if hitboxes overlap)
2023-07-09 04:42:49 +02:00
nfore 8a81d39437 Overlay Caching
Adds overlay_cache_ptr to keep a disabled overlay in memory when it's expected to be shown again.

Most input_overlay_deinit calls are replaced with input_overlay_unload, which caches the overlay unless initing/deiniting core or disabling overlays.

Loading a cached overlay is done as a swap, intended for osk_toggle.

Related updates:
- Fewer parameters for the overlay loading task. Use current settings when enabling an overlay
- Add input_overlay_check_mouse_cursor() to preserve show/hide mouse behavior
- Don't apply input_overlay_show_mouse_cursor in windowed mode (controlled by mouse grab only)
- Remove some dead code
2023-07-09 04:42:49 +02:00
github-actions a54f481935 Fetch translations from Crowdin 2023-07-09 00:14:51 +00:00
nfore f1cdd7a807 Fix overlay block_x_separation regression
block_x_separation was being ignored by auto-scale
2023-07-08 19:08:59 +02:00
github-actions 3451974975 Fetch translations from Crowdin 2023-07-08 00:12:22 +00:00
github-actions 321343316c Fetch translations from Crowdin 2023-07-06 00:13:44 +00:00
libretroadmin aa8d029369 Turn command_memory_get_pointer function static 2023-07-05 03:37:00 +02:00
libretroadmin d514f1ded3 Avoid false positives with code analysis tools - rename
variables called 'system'
2023-07-05 03:29:49 +02:00
Eric Warmenhoven e961dcf550 iOS9 build fix 2023-07-04 20:21:37 +02:00
Eric Warmenhoven 544d78d7b7 Improve some log formatting on iOS/tvOS 2023-07-04 02:54:51 +02:00
sonninnos b899f61c1f Menu navigation hold adjustments 2023-07-04 02:54:30 +02:00
Eric Warmenhoven 0b1c6257cf Preliminary MetricKit support on iOS/tvOS 2023-07-04 02:54:13 +02:00
github-actions 577c5ddc17 Fetch translations from Crowdin 2023-07-04 00:13:12 +00:00
github-actions 05feca3317 Fetch translations from Crowdin 2023-07-03 00:13:10 +00:00
Eric Warmenhoven 8c9e7dd2bf Piping to xcpretty hides compilation failures without set -o pipefail 2023-07-02 05:47:38 +02:00
sonninnos 4cca2b8eaf Add menu icons to 'RetroPad Binds' 2023-07-02 05:47:25 +02:00
Ethan O'Brien 58aafeec78 Fix RWebAudioInit race condition 2023-07-02 05:47:13 +02:00
Eric Warmenhoven 280dcb32f9 Fix several warnings 2023-07-02 05:46:45 +02:00
github-actions 1b953d7463 Fetch translations from Crowdin 2023-07-02 00:14:25 +00:00
sonninnos 7922e45607 Combo hold + 'enable_hotkey' correction 2023-07-01 20:12:13 +02:00
nfore dd18152921 Fix overlay reach_x/y regression 2023-07-01 20:04:07 +02:00
Eric Warmenhoven 224bac241e Compile in OpenAL driver on macos/ios/tvos 2023-07-01 19:26:09 +02:00
Eric Warmenhoven 9d7ce37f9b Implement memory queries on iOS/tvOS 2023-07-01 19:25:57 +02:00
Eric Warmenhoven 9320122252 Compile in CoreText font renderer on macos/ios/tvos 2023-07-01 19:25:18 +02:00
Eric Warmenhoven 8c9ee021e7 Creating a github CI for macOS 2023-07-01 19:24:53 +02:00
Eric Warmenhoven ce49bd6dcc Enable option to rumble iOS device instead of controller (#14734). 2023-07-01 19:24:40 +02:00
hunterk b98bf2ccf0 shorten help string for C89 compatibility 2023-07-01 19:22:45 +02:00
hunterk a123f71ef4 fix unintentional menu_enum change 2023-07-01 19:22:45 +02:00
hunterk 7b20954e66 move port X binds into retropad binds submenu and add appropriate help text and sublabels to discourage people from messing around in there unnecessarily 2023-07-01 19:22:45 +02:00
Ethan O'Brien 7ac3dcd5fe change blocking conditions 2023-07-01 19:22:37 +02:00
Ethan O'Brien 88778bc137 Fix rwebaudio bug 2023-07-01 19:22:37 +02:00
github-actions 78cbbe29e9 Fetch translations from Crowdin 2023-07-01 00:13:46 +00:00
Bernhard Schelling 4d8f0215d1 Fix netplay default modus
Also add optional assertion code that can be enabled to validate the netplay frontend logic
2023-06-29 18:38:58 +02:00
sonninnos 5f237a8ac6 Microphone logging cleanup 2023-06-29 13:55:28 +02:00
Bernhard Schelling 67836c144e Do nothing if the same interface gets set twice 2023-06-29 13:55:14 +02:00
Bernhard Schelling 5b1e28843e C90 fix 2023-06-29 13:55:14 +02:00
Bernhard Schelling 5342d4ff63 Remove invalid test assert macro 2023-06-29 13:55:14 +02:00
Bernhard Schelling e8283363fb Enhance netpacket interface
- Enable core host to refuse connecting new players to limit the number of connected players
- Enable a core to flush outgoing packets and read incoming packets without waiting for the next frame (can be used for lower latency or blocking reads)
2023-06-29 13:55:14 +02:00
Bernhard Schelling 2546ac6bbc Change tab to spaces 2023-06-29 13:55:14 +02:00
Bernhard Schelling 6ccef38fea Enable clients to send netpackets to other clients 2023-06-29 13:55:14 +02:00
Bernhard Schelling eceb712ca9 C89 fix 2023-06-29 13:55:14 +02:00
Bernhard Schelling e2621a8474 Add enum netplay_modus 2023-06-29 13:55:14 +02:00
Bernhard Schelling 9de805c9b1 Clarify netpacket interface handling code
Reduce access to networking_driver_st global variable
2023-06-29 13:55:14 +02:00
Bernhard Schelling 20bb335017 C90 fix 2023-06-29 13:55:14 +02:00
Bernhard Schelling c60878a10d Add netpacket interface
Adds a new libretro interface for a core to send and receive custom network packets for implementing a communication based multiplayer system instead of using the default state serialization based multiplayer. Connection management is still done by the frontend while a core gains the ability to easily support tunneling of multi-console data communication traffic.
2023-06-29 13:55:14 +02:00
sonninnos 3c1c58cfc3 Fix keybind hat hotkey save 2023-06-28 14:30:37 +02:00
Eric Warmenhoven b861d643fc Enable SSL in macos/ios/tvos builds 2023-06-28 14:29:37 +02:00
github-actions 56e088b937 Fetch translations from Crowdin 2023-06-24 00:13:20 +00:00
github-actions 52da69a288 Fetch translations from Crowdin 2023-06-23 00:14:47 +00:00
GABO1423 f1d1f0d2db (UWP) Remove x86 Build Configuration 2023-06-22 12:33:14 +02:00
github-actions c0444fcd79 Fetch translations from Crowdin 2023-06-22 00:12:28 +00:00
libretroadmin d9c196154c (net_http.c) Get rid of strlen 2023-06-21 19:21:16 +02:00
libretroadmin 2c4010818e Revert "Don't use strlcat for print-features and print-help CLI switches"
This reverts commit 3870196efe.
2023-06-21 14:11:42 +02:00
libretroadmin d4fc6c7ce6 * Reduce snprintf calls to only formatting
* More strlcpy usage, less strlcat
2023-06-21 09:37:55 +02:00
libretroadmin 22dc6aff5a Rework some snprintf/strlcat calls 2023-06-21 09:25:04 +02:00
libretroadmin 57906892d8 Revert "On mobile in portrait mode, don't override custom viewport"
This reverts commit 6a1320bcfb.
2023-06-21 08:37:19 +02:00
github-actions 2251d27362 Fetch translations from Crowdin 2023-06-21 00:12:15 +00:00
libretroadmin c92d7d3071 (task_database_cue.c) Simplifications 2023-06-20 20:07:44 +02:00
libretroadmin 46d6240f21 Rewrite some more strlcat calls 2023-06-20 19:52:38 +02:00
libretroadmin e3db17bf2d (Qt) Less strlcat 2023-06-20 19:26:02 +02:00
libretroadmin 60fb5dfc6e Fix system information spacing 2023-06-20 19:12:43 +02:00
libretroadmin 2195ac998b FIx potential -Wformat-truncation warnings 2023-06-20 19:06:45 +02:00
libretroadmin 3870196efe Don't use strlcat for print-features and print-help CLI switches 2023-06-20 18:43:49 +02:00
libretroadmin 22f32bf069 replace more strlcat calls in menu_cbs_sublabel.c 2023-06-20 18:21:10 +02:00
libretroadmin 2b4ad8f654 Fix sublabel_netplay_room 2023-06-20 18:01:59 +02:00
libretroadmin b7e122a4fa Replace more strlcat calls 2023-06-20 17:56:45 +02:00
libretroadmin 458fe7a761 * Remove more strlcat calls
* Safer manual char assignment in database_info.c
2023-06-20 17:43:33 +02:00
libretroadmin bdc398d79f - Safer code - use strlcpy where possible instead of manual character
assignments for strings longer than 2 chars
- Use strlcpy concatenation instead of strlcat
- Make sure that what remains of iteration of the '_len' variable
for manual char assignment
is done in a safer way so mistakes are less possible
2023-06-20 16:33:55 +02:00
libretroadmin 2cebb07201 (menu_explore) General cleanups:
* Use strlcpy instead of strlcat
* Some style nits
2023-06-20 14:42:31 +02:00
libretroadmin 8515fbf652 Reduce strlcat calls in crucial video_driver_frame function 2023-06-20 13:38:20 +02:00
libretroadmin fa80ec099f Rewrite some strlcat calls to strlcpy 2023-06-20 13:21:26 +02:00
libretroadmin 1c4dc615e1 Remove extra function prototype 2023-06-20 12:00:17 +02:00
libretroadmin c0d3b8f14b Buildfix for X11 - rename win32_suppress_screensaver to
win32_suspend_screensaver
2023-06-20 11:56:25 +02:00
libretroadmin 5e2bfcbe09 x11_show_mouse and win32_get_video_output_size - get rid of duplicate
code
2023-06-20 11:46:00 +02:00
libretroadmin 08ba0b53c6 Standardize x11_suspend_screensaver 2023-06-20 11:37:29 +02:00
libretroadmin 5971f24237 Remove some code duplication 2023-06-20 09:37:07 +02:00
libretroadmin 700b58a77a Small cleanup to drm_ctx.c 2023-06-20 08:43:46 +02:00
libretroadmin 1cff8e26f4 (Android) Move DPI metric code to dispserv_android.c - and remove
duplicate code
2023-06-20 08:31:19 +02:00
libretroadmin 16fcd1d62c (Vulkan/Wayland) Cleanups 2023-06-20 08:20:13 +02:00
libretroadmin 45a2736958 (Wayland) Cleanups 2023-06-20 07:25:00 +02:00
libretroadmin 12e7b31633 database_info_list_iterate_found_match - use two strlcpys here instead
of snprintf
2023-06-20 07:18:44 +02:00
libretroadmin 6a147370d0 (Wayland) Cleanups 2023-06-20 07:08:14 +02:00
libretroadmin 103982f41d Remove unused gfx_display_ctx_null 2023-06-20 06:47:06 +02:00
Subs e910eb9add CRT: don't always force core aspect ratio 2023-06-20 03:36:38 +02:00
Bernhard Schelling fa443845dd Fix building drm_ctx.x without crt switchres 2023-06-19 18:18:13 +02:00
Bernhard Schelling 2c9bc8d850 Fix "variable set but not used" when HAVE_PATCH is not defined 2023-06-19 18:18:01 +02:00
Bernhard Schelling 4518b117c9 Fix build error "conflicting types for ‘drm_free’"
Function name conflicts with different function in drm_free drm_common.h
2023-06-19 18:17:50 +02:00
libretroadmin c253bf4cbd Reduce char arrays -
* titles and msgs sent to runloop_msg_queue_push should just be
128 in size
* single extensions queried by frontend around 16
2023-06-19 18:16:40 +02:00
libretroadmin 0bf3d21538 Reduce some char arrays which are too big 2023-06-19 17:31:50 +02:00
sonninnos 6015e73003 Show playlist history/favorites icons by default 2023-06-19 17:09:58 +02:00
sonninnos 23bd1bc7f5 Remove advanced option flag from video rotation+orientation 2023-06-19 17:03:33 +02:00
sonninnos 7eae4ee3f6 Reorder overlay menu 2023-06-19 17:01:52 +02:00
libretroadmin 9d027e51fe if 0 out update_single_core code 2023-06-19 16:51:04 +02:00
hunterk 429576a79a comment out forced core update for netplay 2023-06-19 16:46:40 +02:00
libretroadmin 0f374ea69d Don't call video_state_get_ptr inside gfx/video_driver.c 2023-06-19 07:50:26 +02:00
libretroadmin a296160151 Simplify gfx_display_init_first_driver 2023-06-19 07:46:16 +02:00
libretroadmin e8242253a7 Reduce strlcat calls where possible 2023-06-19 06:00:10 +02:00
sonninnos a7ac52fe91 Menu navigation acceleration adjustments 2023-06-19 04:38:00 +02:00
github-actions 5caebf3675 Fetch translations from Crowdin 2023-06-19 00:12:35 +00:00
libretroadmin 31d8f4fd51 Cut down on more strlcat calls 2023-06-18 22:53:13 +02:00
sonninnos d6d0195060 Menu sounds corrections 2023-06-18 22:39:09 +02:00
libretroadmin 0517354181 * replace more strlcat calls with strlcpy
* Get rid of unnecessary string copies by clever usage of strlcpy
* Get rid of unnecessary temp variables when not needed
2023-06-18 22:37:01 +02:00
libretroadmin 61ce614251 Do video_driver_get_ident check last in boolean equation 2023-06-18 21:27:34 +02:00
sonninnos 57e1b849f9 (Vulkan) Ignore Fast-Forward Frameskip option 2023-06-18 21:24:30 +02:00
sonninnos b92540b24d (udev) Log mouse devices in info level 2023-06-18 19:43:38 +02:00
sonninnos 83d888ca4a Cleanup Desktop Menu welcome text 2023-06-18 19:42:10 +02:00
LibretroAdmin 244c86f661 Revert "Frame limiting improvements"
This reverts commit c723710c90.
2023-06-18 19:36:59 +02:00
libretroadmin edecf0cb2d Replace more strlcat calls with strlcpy 2023-06-18 19:25:24 +02:00
sonninnos c723710c90 Frame limiting improvements 2023-06-18 18:58:37 +02:00
libretroadmin 2b273697c8 menu_cbs) sublabel/title - replace some strlcat calls 2023-06-18 14:08:37 +02:00
libretroadmin 97deec44f4 Remove unused variable warning 2023-06-18 13:55:39 +02:00
libretroadmin 942858c6ba Fix -Werror, -Wfortify-source error for Orbis 2023-06-18 13:14:36 +02:00
libretroadmin 7b60626943 Silence -Wsign-compare warning 2023-06-18 13:08:55 +02:00
libretroadmin e055790a48 * Get rid of some duplicate strlen calls
* Get rid of some unnecessary temp char variables
* Some other small rewrites
2023-06-18 13:06:33 +02:00
libretroadmin 2ab38eaf98 Reduce some local char variables which were unnecessarily big,
and reduce some temp char variables
2023-06-18 12:31:49 +02:00
libretroadmin 631301b3f7 * Cut down on strlcat calls when possible and replace them with clever
usage of strlcpy (when position/offset of previous strlcpy/snprintf call
is known. strlcat implementation in libretro-common makes implicit strlen
call, using strlcpy avoids this
* Reduce a bunch of local char variables by use of said clever usage,
should save up on local stack size usage
2023-06-18 12:06:12 +02:00
Jesse Talavera-Greenberg dbc1a41cf6 Fix the name of the artifact pushed by the msvc-2019 job 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 4d9bfda65c Don't include all platforms in UWP app bundles
- This lengthens the build time
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 79e64ac2c1 Fix the artifact path for msvc2019 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg a78f9598de Silence a warning in video_driver.c 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 3183941d9e Only produce one MSVC 2019 build 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 986057f565 Reduce the number of UWP builds
- Only Release and ReleaseANGLE for x64 will be produced
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 1a98b430ed Change how the GitHub SHA is referenced in MSVC.yml 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 4628cd0e0b Revert "Exclude 7zip support from UWP builds"
This reverts commit 1147ac6a58.
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 719e25e0db Add some stray colons 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg c2c139c48c Add msbuild to the PATH for the MSVC builds 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg e6604a3f8c Remove a stray period 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 64bd977712 First draft of a workflow for MSVC 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg be6d793399 Add some patterns to msvc-uwp's .gitignore 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg d3d3207214 Apply some compiler-specific hacks to resolve compiler errors
- Make the existing _WIN32_WINNT redefinition contingent on MinGW
- Define a typedef for EDataFlow on MSVC
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg cd3bd1d9d5 Consolidate more properties in RetroArch-msvc2019.vcxproj 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 5044060ed0 Consolidate all PropertyGroups for the msvc2019 project file 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 6f9cd452e9 Consolidate uses of <LinkIncremental> 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg c85bfd3d57 Consolidate code analysis-related properties in RetroArch-msvc2019.vcxproj 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg dd69986cea Set the RootNamespace to RetroArchmsvc2019 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 97278a3172 Consolidate several PropertyGroups in RetroArch-msvc2019.vcxproj 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 5be568a5ef Consolidate the PropertySheets ImportGroup
- It's no longer conditional, since all configurations use the same value
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 1a18f36971 Forgot to commit my changes to griffin_cpp.cpp 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 65a0475235 Remove HAVE_CG from build configurations that don't use it in RetroArch-msvc2019.vcxproj 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg ebd89d762a Refactor how RetroArch-msvc2019.vcxproj generates MOC files
- Use one set of properties with conditions
- Include all headers in ui/drivers/qt instead of naming them all
- Update griffin_cpp.cpp to reflect these changes
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg e7241e09f3 Add a section for Qt-specific properties in RetroArch-msvc2019.vcxproj
- But only if the build configuration uses Qt
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 06cec38a9b Add some directory patterns to .gitignore 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg ad211f1452 Update the .gitignore
- Add some VS-specific artifacts
- Add versioned Linux shared objects
- Simplify some directory-specific patterns to the extension
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg b01793601b Exclude 7zip support from UWP builds
- 7zip uses Windows file functions directly, as opposed to an abstraction layer
- UWP doesn't support some of the functions that 7zip uses
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 3195808d50 Fix some $(VS)-related variables for UWP build 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 8dd1737aee Define HAVE_MICROPHONE in all configurations in RetroArch-msvc2019.vcxproj 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 7d2256f92c Silence a warning 2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 972c539869 Check for __ARM_NEON__ and _M_ARM64
- Its absence was causing certain MSVC builds to fail with the #error directive
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 082cefa133 Add IID_IAudioCaptureClient
- Its absence could cause linker errors in MSVC
2023-06-18 08:38:53 +02:00
Jesse Talavera-Greenberg 3599b3e675 Fix a compiler error
- A use of mmdevice_list_new was not updated to reflect its changed signature
2023-06-18 08:38:53 +02:00
sonninnos 8a862bf20e Keyboard mapping bit fix (#15392) 2023-06-18 08:09:34 +02:00
github-actions fdd5f9e759 Fetch translations from Crowdin 2023-06-18 00:13:46 +00:00
github-actions 6020da1320 Fetch translations from Crowdin 2023-06-17 00:11:07 +00:00
libretroadmin 408cbf98c9 database_info.h - cleanup to struct 2023-06-16 20:35:15 +02:00
libretroadmin fc06e2f84f Simplify core_serialize_size and core_serialize_size_special 2023-06-16 17:20:27 +02:00
libretroadmin c4b99031f0 (Menu) more static functions in menu_cbs_ok.c 2023-06-16 15:40:14 +02:00
libretroadmin d54097f3e1 (playlist.c) Cleanups 2023-06-16 14:56:52 +02:00
libretroadmin cf909b799b (playlist.c) Small cleanups 2023-06-16 14:14:56 +02:00
libretroadmin df73a3876c replace snprintf call with strlcpy 2023-06-16 13:42:01 +02:00
Grisly Glee 1bd501f8d2 Refactor system_info page (#15388) 2023-06-16 04:47:23 +02:00
libretroadmin 7d60a2cc8f Move functions around, make some static, move some around 2023-06-16 03:27:19 +02:00
libretroadmin 96068dfa81 Turn setting_set_with_string_representation static 2023-06-16 02:41:36 +02:00
libretroadmin e818541337 (Menu) Turn some functions static 2023-06-16 02:29:10 +02:00
github-actions aecaf79585 Fetch translations from Crowdin 2023-06-16 00:12:08 +00:00
libretroadmin 618bedb950 Get rid of setting_get_bind_type 2023-06-16 02:03:04 +02:00
libretroadmin cd95a0f663 Cleanups 2023-06-16 01:56:46 +02:00
libretroadmin caf0df3f97 setting_list.h - turn several functions static 2023-06-16 01:36:07 +02:00
libretroadmin 373d1307c0 (runtime_file.c) Cleanups - remove functions that are never used 2023-06-16 01:23:24 +02:00
libretroadmin bc1672708d Get rid of some code duplication in MaterialUI/Ozone 2023-06-16 00:48:16 +02:00
libretroadmin 8ea67c0d99 Cleanups 2023-06-15 23:51:29 +02:00
libretroadmin 0c51321099 Get rid of font_driver_flush 2023-06-15 23:41:40 +02:00
Grisly Glee 3861e6e3ba Introduce RETRO_DEPRECATED macro (#15363) 2023-06-15 23:16:18 +02:00
sonninnos 0b7e8eab99 Microphone menu correction (#15385) 2023-06-15 21:36:36 +02:00
sonninnos 610207dcfd Menu sounds fixes (#15384) 2023-06-15 21:36:20 +02:00
libretroadmin 410242c164 (input_driver.c) Don't keep regrabbing the same pointers in input_state_internal function 2023-06-15 14:26:41 +02:00
libretroadmin e9387193d5 Some style nits 2023-06-15 14:05:06 +02:00
libretroadmin 723f54b713 (common wasapi) Small cleanups, always have a last return value 2023-06-15 14:02:14 +02:00
libretroadmin ab7d4e1aec Need to add retro_common_api.h to this header file if you're going to
use RETRO_BEGIN_DECLS/RETRO_END_DECLS
2023-06-15 13:56:57 +02:00
libretroadmin 489a5b9ac6 Fix MSVC2010 warning 2023-06-15 13:43:53 +02:00
libretroadmin b8951de6fd (GX2) Cleanups 2023-06-15 13:34:08 +02:00
libretroadmin afd3df7523 (win32_common.c) Silence warning by casting to DWORD 2023-06-15 13:12:41 +02:00
libretroadmin 060ea43100 Remove now obsolete xdk1_xfonts.c 2023-06-15 12:59:32 +02:00
libretroadmin ae3ac72356 Cleanups for font drivers 2023-06-15 12:37:09 +02:00
github-actions 1fc5c600a4 Fetch translations from Crowdin 2023-06-15 00:12:09 +00:00
libretroadmin 426ba5382c C89 buildfix and other small cleanup 2023-06-15 01:58:23 +02:00
libretroadmin 975d613fbb (input_driver.c) Small cleanups - input_driver_state_internal
return type is int16_t so don't use float value for analog_x/analog_y
variables
2023-06-15 01:52:24 +02:00
Grisly Glee de0c6d5cd1 Trivial warnings fixes (#15383)
* Trivial graphics context drivers fix

* Assorted minor warnings fixes
2023-06-14 23:46:27 +02:00
libretroadmin d342a4a04a Signedness warning fixes 2023-06-14 23:25:50 +02:00
libretroadmin 246cceeb27 Silence more signedness warnings 2023-06-14 19:51:31 +02:00
sonninnos c4f43ff28b Linux input driver fix 8+ joypads (#15374) 2023-06-14 04:43:45 +02:00
sonninnos 20e7107598 Audio menu cleanup (#15376)
* Microphone menu cleanup

* Combine audio resampler menu with audio output menu
2023-06-14 04:43:28 +02:00
Grisly Glee 4202f8650d Fix trivial signedness warnings (#15377)
* Fix trivial signedness warnings

* Followup on trivial signedness warnings
2023-06-14 04:43:11 +02:00
Subs d9439b8166 CRT: fix aspect ratio for tate games on a horizontal screen (#15378) 2023-06-14 04:42:43 +02:00
Grisly Glee 6f0c48b4c4 Clean up gfx driver interface structs (#15379) 2023-06-14 04:42:34 +02:00
github-actions 54884d986a Fetch translations from Crowdin 2023-06-14 00:11:38 +00:00
sonninnos c8b6f7fcd5 (WASAPI) Don't reset OS mixer volume in shared mode (#15369) 2023-06-13 07:52:52 +02:00
Eric Warmenhoven 7b263461da iOS/tvOS: When updating playlist with detected core path, used resolved core path (#15372) 2023-06-13 07:52:39 +02:00
sonninnos 6b9727911b Improve scanner console output (#15345)
* Improve scanner console output

* More scanner console output coloring
2023-06-11 12:46:30 +02:00
Grisly Glee 337a496f1a Add files generated for wayland to gitignore (#15368) 2023-06-11 12:26:00 +02:00
Grisly Glee a2285de73e Have sdl2 gfx driver use "nearest" scaling in menus (#15366) 2023-06-11 06:35:45 +02:00
Grisly Glee 1150e2b8f7 Fix xvideo gfx driver (#15365)
* Add menu support to xvideo gfx driver, making it usable

* Disable xvideo gfx driver by default
2023-06-11 02:21:42 +02:00
github-actions 8a1e80a28d Fetch translations from Crowdin 2023-06-11 00:13:24 +00:00
github-actions 8a6f7e6fff Fetch translations from Crowdin 2023-06-09 00:12:56 +00:00
github-actions a0cce91959 Fetch translations from Crowdin 2023-06-08 00:12:58 +00:00
Grisly Glee 1e389a97ff Disable xshm gfx driver by default (#15359) 2023-06-07 21:02:54 +02:00
Bernhard Schelling fd99da3ac2 Add CI Android build github action (#15358) 2023-06-07 20:18:32 +02:00
github-actions 43dd4ee97b Fetch translations from Crowdin 2023-06-07 00:12:11 +00:00
libretroadmin 23e41a326c Buildfix for android/ios 2023-06-07 00:14:19 +02:00
Jesse Talavera-Greenberg 938d60d0f4 Add microphone support via a new driver (#14731)
* Some slight fixes

* Update libretro.h

* Log calls to RETRO_ENVIRONMENT_GET_MICROPHONE_INTERFACE

* Finish proof-of-concept for mic support

- It works, but doesn't support floating-point audio yet
- It may need to be resampled, too

* Add macros that aren't available in SDL 2

* Comment out a variable definition for now

- For C89 compliance

* Add some comments for clarity

* Let ALSA tolerate a null new_rate

* Partial ALSA microphone support

- Not yet tested
- Mic is created and destroyed
- Mic can also be paused or unpaused
- Mic is paused or unpaused with the rest of the driver
- Microphone is not yet read

* Install error logging in the ALSA driver

- It defers to RARCH_ERR

* Free the ALSA microphone in alsa_free

* Fix an indent

* First draft of alsa_read_microphone

* Deinitialize SDL Audio in sdl_audio_free

* Save and restore the ALSA error logger

- You should always practice safe global state

* Add newlines to some RARCH_ERRs

* Add some logging

* Check for the mic being active via settings instead of via flags

* Adjusted a log entry to be less misleading

- A frequency of 0Hz looks weird to the uninformed
- In reality, it means the driver used the requested frequency

* Fix an incorrect format string

* Tidy up logging in alsa.c

* Rename audio_enable_microphone to audio_enable_input

* Rename microphone_device to audio_input_device

* Add audio_input_latency and audio_input_block_frames settings

* Add all mic-related settings to the options menu

* Adjust logging for alsa.c

- Log the ALSA library version
- Add errno details

* Refer to the microphone in logs by name

* Use %u instead of %d for some log items

* Add input_samples_buf

* Remove an inaccurate comment

* Change type of input_samples_buf

* Clean up audio_driver_flush_microphone_input

* Comment convert_float_to_s16

- It helped me understand what it's doing
- Turns out it'll work just fine on mono audio

* Don't use the resampler for mic input

* Fix crash in the ALSA driver when reading from a mic

* Update some logging messages

* ALSA support now works for mics

* Reuse some common functions in alsa.c

* Add alsa_thread_microphone_t

* Refactor alsa.c

- Introduce alsa_init_pcm to init any PCM that we're using
- Vastly simplifies the implementation of alsa_init and alsa_init_microphone
- Will be used for the read-based versions next

* Make ALSA logging a little more consistent

* Clean up the mic with alsa_free_microphone if alsa_init_microphone fails

* Remove an unused function

* Move some cleanup in alsa.c to a common function

* First crack at mic support for alsathread

- Refactor some duplicate code into functions
- Use functions introduced in alsa.c
- Create and destroy the mic

* Slight cleanups for clarity

* Implement alsa_thread_set/get_microphone_state

* More work on alsathread

- No more crashing, but the mic just returns silence

* Slight cleanups for clarity

* Add alsa_set_mic_enabled_internal

- For setting the state of a microphone while considering its current state

* Use alsa_set_mic_enabled_internal

* Log a little more info

* Log when the audio driver is started/stopped

* Move base microphone driver code into a new directory

- Add microphone_driver.c to Makefile.common
- Rename functions as needed

* Initialize and deinitialize the microphone driver

* Implement sdl_microphone.c

* Un-const an argument

- In case the driver context needs to do any locking

* Revise comments for microphone_driver.h

* Remove an unimplemented function

* Remove some functions from the mic driver

* Remove mic functions from audio_thread_wrapper

* Remove mic functions from sdl_audio

* Fix microphone_null

* Split the mic code for the alsa audio drivers into microphone drivers

* Fix an extra struct member

* Add a setting for the mic driver

* Add a command to reinitialize the microphone driver

* Rename mic-related settings

* Add DRIVER_MICROPHONE_MASK to DRIVERS_CMD_ALL

* Rename audio_enable_input to microphone_enable

* Remove some labels from qt_options

* Search for microphone_driver within find_driver_nonempty

* Clean up some mic driver code

* Pending mics now return silence

* Adjust some logging and comments

* Some cleanup in the microphone driver

* Invert a flag check

- Oops

* Fix a log message

* Fix the wrong flags being checked

* Slight refactor of wasapi_init_device

- Add a data_flow parameter
- Declare it in a header
- In preparation for WASAPI mic support

* Add some WASAPI macros for _IAudioCaptureClient

* Move some common WASAPI functions to audio/common/wasapi.c

- They'll be used by the mic and the audio drivers

* Add wasapi_log_hr

* Generalize mmdevice_list_new to look for capture devices, too

* Fix a function declaration

* Move driver-specific device_list_new functions into their respective files

* Clean up some declarations

* First draft of wasapi microphone driver

* Add wasapi_microphone_device_list_free

* Change function parameter names to be consistent with microphone_driver

* Partially implement wasapi_microphone_read

- Mostly copied from the audio driver so far
- It doesn't compile yet
- But it'll be beautiful when I'm done with it

* Refactor the mic driver's functions

- Rename get_mic_active to mic_alive
- Split set_mic_active into start_mic and stop_mic
- Refactor the SDL mic driver accordingly

* Edit some WASAPI functions for logging and clarity

* Implement more of the WASAPI mic driver

* Rename write_event to read_event

* Pass the WASAPI driver context to the various read functions

* Mostly implement the read function for the WASAPI mic driver

* Fix a crash in microphone_driver

- Forgot to move the position of the name of null_driver

* Reduce some logging in wasapi common functions

- Only log the chosen audio client format, not all attempted ones

* Add some macro wrappers for IAudioClient methods

* Update mic driver configuration

- Make the mic driver configurable in the menu
- Add config items for WASAPI-related options similar to the audio driver

* Fix a menu entry scrolling through audio devices instead of mic devices

* Add some utility functions

* Expose the new utility functions in wasapi.h

* Add extra logging in the WASAPI common functions

* Add sharemode_name

* Use _IAudioClient_Initialize macro in some places

* Pass channels to wasapi_init_client

- Remember, mics are in mono

* Use _IAudioClient_Initialize macro some more

* Forgot to pass channels in some places

* Add some utility functions

* Forgot an #include

* Add wasapi_select_device_format

* Simplify the format selection logic in wasapi_init_client_sh

* Unset the microphone in wasapi_microphone_close_mic

- Ought to prevent a potential segfault

* Simplify some logging

* Fix incorrect value being passed to _IAudioCaptureClient_ReleaseBuffer

* Remove some unneeded logging

* Add some values to hresult_name

* Polish up wasapi_select_device_format

- Test for formats manually when Windows can't
- Add some debug logging
- Check for channels

* Compute the fields of WAVEFORMATEXTENSIBLE correctly

- As per the doc's stated requirements

* Simplify logic for WASAPI client creation

* Fix a potential hang in wasapi_microphone_read_shared_buffered

* Stop the microphone if the driver is stopped

* Don't name the microphone event

* Ensure that wasapi_init_client reports the correct format and rate

* Implement exclusive microphone read access for WASAPI

* Add _IAudioCaptureClient_GetNextPacketSize macro

* Organize cases in hresult_name

* Clear some extra fields if wasapi_set_format is setting a Pcm format

* Adjust some logs

* Adjust some logs

* Remove unneeded local vars

* Add a log

* Update wasapi.c

* Update wasapi.c

* Fix shared-mode mic support in WASAPI producing broken input

- Turns out it had nothing to do with shared mode

* Reuse a common function

- Remove wasapi_microphone_read_shared_buffered
- Rename wasapi_microphone_read_exclusive to wasapi_microphone_read_buffered

* Remove some code I was using for test purposes

* Clarify some language

* Double the default shared-mode mic buffer length

* Split getting a device's name into a separate function, then use it

* Fix the ALSA mic drivers

- To comply with changes I previously made to the mic driver interface

* Remove unused synchronization primitives from the SDL microphone driver

* Add sdl_microphone_mic_use_float

* Document audio_driver_state_flags

- I needed to understand these to see if similar flags were required for the mic driver

* Remove an unused function in wasapi.c

* Add and document flags in microphone_driver.h

* Remove driver-specific mic start/stop functions

- The mic driver itself doesn't do much processing
- That honor goes to individual mics

* Remove some unused fields in microphone_driver.h

* Add CMD_EVENT_MICROPHONE_STOP/START

* Remove unused functions from microphone_null

* Change how the mic driver state is referenced in some places

* Simplify the SDL microphone driver

- The driver backend no longer keeps a reference to the mic (the frontend does that)
- Remove functions that are no longer needed
- Don't track paused state, just query the mic itself

* Simplify the WASAPI microphone driver

- Don't track the driver running state or the microphone handle, the frontend does that now
- Remove support for unbuffered input (hunterk suggested that it wasn't necessary)

* Make microphone_wasapi_sh_buffer_length a uint, not an int

- It won't be negative anymore
- 0 now represents the default value

* Make the microphone frontend more robust

- Improve documentation for how various functions should be implemented
- Closes all microphones before freeing the driver (so backends don't have to)
- Tracks the enabled state of each microphone, so backends don't have to (but they still can)

* Stop the mic driver in core_unload_game

* Ensure mic support is compatible with the revised menu code

* Move alsa.h into audio/common

* Remove RETRO_ENVIRONMENT_GET_MICROPHONE_ENABLED

- It was never really needed

* Refactor the ALSA microphone driver

- Move common ALSA functions to audio/common/alsa.c
- Replace alsa_set_mic_enabled_internal with alsa_start/stop_pcm
- Don't track the microphone handle in the ALSA driver context
- Remove unneeded fields

* Move some common alsathread code into audio/common/alsathread.c

* Change return type of mic_driver_open_mic_internal to bool

* First crack at resampling mic input

* Remove an extraneous check

- I think something distracted me when I was writing this line

* Add stereo/mono conversion functions

* Make alsa_start_pcm and alsa_stop_pcm more robust

- They now return success if the stream is already running and stopped, respectively

* Revise some mic-related comments in libretro.h

* First crack at resampling mic input

* Simplify an expression

* Simplify an expression

* Fix a log tag

* Allow mic resampler to be configured separately from audio resampler

* Add some comments

* Set the source ratio to something sensible

* Stop deadlock in `alsathread` mic driver

* Allow mics to be initialized even when core is loaded from CLI

- When loading content from CLI, the drivers are initialized a little differently
- That threw off the mic initialization code

* Rename the functions in retro_microphone_interface

* Revise some mic-related comments in libretro.h

* Update retro_microphone_interface

- Add get_mic_rate
- Add a parameter to open_mic
- The modifications don't do anything yet

* Use parameter objects in the microphone handle

* Replace get_mic_rate with get_params

* Add a microphone interface version

* Remove part of a comment

* Set the effective params in mic_driver_microphone_handle_init

* Drop a stray newline

* Change where the mic interface is zeroed

- I was accidentally throwing out the version that the core was asking for

* Reduce logspam for wasapi_set_nonblock_state

- Now it only logs when the sync mode is changed

* Change DEFAULT_WASAPI_SH_BUFFER_LENGTH to 0

- -16 is no longer a valid value

* Set the new_rate in wasapi_init

* Change description of microphone sample rate in the settings

* First attempt at resampling configured mic input

* Forgot a section

* Fix some input samples being skipped

* Rename a variable for clarity

* Add microphone.outgoing_samples

* Update the mic driver

- Processed samples are now buffered
- The resampler is skipped if the ratio is (very close to) 1

* Remove part of a comment

* Update some comments in audio_resampler.h

* Slightly refactor the SDL microphone driver

- Move SDL_AudioSpec to a field of sdl_microphone_handle_t
- Allow SDL to change the requested format and sample rate
- Request floating-point input
- Implement sdl_microphone_mic_use_float

* Fix a non-C89-compliant declaration

* Add new files to griffin.c

* Remove a C++-style comment

* Add two more files to griffin.c

* Remove some unneeded declarations in microphone_driver.h

* Remove a stray comma in configuration.c

- For C89 compliance

* Fix compilation on some platforms

* Change some function signatures

* Make the ALSA drivers always set the audio rate

* Fix the alsathread mic driver

* Make state_manager_frame_is_reversed return false if HAVE_REWIND isn't defined

* Mute the microphone if the core is running in fast-forward, slow-mo, or rewind

* Clarify a comment

* Clarify a comment

* Add a comment

* Don't allocate memory for slowmo samples in the mic driver

- We're not supporting slowmo for mics, so it's not needed

* Fix a {

* Add my name to AUTHORS.h

* Add driver_lifetime_flags

- For drivers that have special setup/teardown needs

* Ensure that resetting the mic driver maintains active mic handles

- Prevents fullscreen toggle from stopping all mic input

* Update CHANGES.md

* Move some default microphone settings to a new part of the config file

* Ensure that RetroArch can use the audio format that Windows suggests

* Remove references to mic support in the SDL audio driver

* Remove unused WASAPI functions

* Return failure if RetroArch couldn't select a WASAPI format

* Ensure that Windows uses the WASAPI mic driver by default

* Treat disabled mic support as a warning, not an error

* Clarify some WASAPI-related microphone settings

* Remove some unused variables

* Add or revise microphone-related comments

* Rearrange doc comments for microphone types in libretro.h

* Remove a space

* Remove some unused flags

* Remove ALSA error logger

- It was never used anyway

* Remove unneeded microphone-related arguments

* Document a parameter

* Remove a logging call

* Add a constant for the microphone's shared buffer length for WASAPI

* Fix stylistic inconsistencies

* Make mic_driver_get_sample_size a macro instead of a function

* Move the microphone implementation to the audio directory

* Make microphone support optional (but enabled by default)

* Fix the griffin build
2023-06-06 21:55:06 +02:00
github-actions eebeed4115 Fetch translations from Crowdin 2023-06-06 00:12:45 +00:00
Eric Warmenhoven 6218649b4c tvOS: Fix analog stick handling after adding Siri remote tap support 2023-06-06 01:53:23 +02:00
Grisly Glee 2cc377c154 Fix corrupt task progress percentage 2023-06-06 01:53:13 +02:00
jiangxiaogang 44142ceeb8 Fixed android gamepad binds 2023-06-06 01:52:39 +02:00
Eric Warmenhoven b89e6afe1c Fix including audio/video filters on iOS 2023-06-06 01:52:23 +02:00
Eric Warmenhoven 6c831b25a6 Restore "macOS Cocoa: fix mouse grab in windowed mode."
This reverts commit 269c902429, with a
build fix.
2023-06-06 01:52:13 +02:00
libretroadmin 0093817da1 (PSL1GHT) Buildfix 2023-06-05 00:49:18 +02:00
libretroadmin 269c902429 revert 2023-06-04 16:28:59 +02:00
libretroadmin 63bf68d616 Cover both HAVE_COCOA and HAVE_COCOA_METAL for now 2023-06-04 16:09:49 +02:00
libretroadmin 794b430bac cocoa_input_grab_mouse - compile it in only for regular Cocoa, not CocoaTouch 2023-06-04 16:08:24 +02:00
libretroadmin 1352036133 (cocoa_input.m) Cleanups 2023-06-04 16:03:55 +02:00
libretroadmin cd6aec70ac Buildfix for iOS/tvOS 2023-06-04 15:51:02 +02:00
Alexander Kozharsky 167c52ec77 macOS Cocoa: fix mouse grab in windowed mode. 2023-06-04 14:51:04 +02:00
libretroadmin 2fa9e5cbb1 (D3D10) Cleanups for render_line and style nits 2023-06-04 02:00:40 +02:00
libretroadmin 691c09ef09 (Video drivers) Small cleanups/optimizations to render_line - hose
out some variables that are never subject to change
2023-06-03 20:56:19 +02:00
libretroadmin eb509b8d8e get_line_metrics always implemented for font rendering backend, take
out code parts for hypotheticla font rendering backends that don't implement
it
2023-06-03 18:34:47 +02:00
libretroadmin 51a8150e45 Do away with some NULL checks for font rendering backend 2023-06-03 17:21:19 +02:00
github-actions 12cbec8d40 Fetch translations from Crowdin 2023-06-03 00:11:47 +00:00
libretroadmin 35b445c3ed (UWP) Buildfix 2023-06-02 02:24:55 +02:00
github-actions b97ebf58dd Fetch translations from Crowdin 2023-06-02 00:13:28 +00:00
libretroadmin a7977c5f38 (Qt) Get rid of menu_setting_find references 2023-06-01 23:56:56 +02:00
libretroadmin 68ddb0e3b2 (Qt) Cleanup 2023-06-01 23:51:53 +02:00
libretroadmin f29fbda584 (Wayland) Fix build 2023-06-01 23:03:26 +02:00
libretroadmin 31751a3945 Cleanups 2023-06-01 22:52:05 +02:00
libretroadmin 5319161c66 Buildfix 2023-06-01 22:37:03 +02:00
libretroadmin f66a8dc538 Cleanup unused variable warnings 2023-06-01 22:34:16 +02:00
libretroadmin f49bfd2262 (CTR) Buildfix 2023-06-01 22:19:08 +02:00
libretroadmin c1166ee823 Cleanups 2023-06-01 21:34:34 +02:00
libretroadmin f3fe46393c Cleanups 2023-06-01 20:29:05 +02:00
libretroadmin 27aeb314a1 merge d3d8_common.c into d3d8.c 2023-06-01 20:14:19 +02:00
libretroadmin 36cf7f00a8 Cleanups 2023-06-01 19:59:11 +02:00
Bernhard Schelling 189542ea5f Prevent the android quick tap mouse click emulation while pressing a button on the on-screen overlay 2023-06-01 18:34:37 +02:00
anaximan bd59d35498 Fixed the corner tapping toggle 2023-06-01 15:56:09 +02:00
anaximan d7a4ee6918 Added clarification for the trackball and auto reloading to VMouse options. 2023-06-01 15:56:09 +02:00
anaximan e301ddf29f Compilation fixes when UDEV_TOUCH_SUPPORT is undefined 2023-06-01 15:56:09 +02:00
anaximan 516de17de0 Added touch-related options to RetroArch Input settings menu. Added trackball mode. 2023-06-01 15:56:09 +02:00
anaximan 59651914cd Fixed some typos, code cleanup, and C89 compatibility 2023-06-01 15:56:09 +02:00
anaximan 42c0c7ee2b First working version of udev driver with touchscreen support and gestures. 2023-06-01 15:56:09 +02:00
libretroadmin 0a06ace36e (vita) Fix vita2d_init symbol conflict 2023-06-01 02:30:45 +02:00
libretroadmin 21ffa14fea Cleanups - cleanup unused variable warnings 2023-06-01 01:06:56 +02:00
libretroadmin e51d1a3d2a Get rid of some old libtransistor files/codepaths 2023-06-01 00:08:00 +02:00
libretroadmin 0ee2f93ca4 Combine gfx_display files into video drivers 2023-05-31 23:58:06 +02:00
libretroadmin d1b9badf41 Rename common files to _defines.h 2023-05-31 22:46:34 +02:00
libretroadmin 2bf08f5457 vulkan_font_render_msg - don't use video_st 2023-05-31 22:01:00 +02:00
libretroadmin f08958dbc1 Move inline functions to files that actually need them,
move enums at the top of the header files
2023-05-31 21:50:07 +02:00
libretroadmin 77466d6f85 Rename d3d_w32_font.c to d3d9x_w32_font.c 2023-05-31 21:32:52 +02:00
libretroadmin 020e5fd7af (Vulkan) vulkan_debug_mark_object - C89 buildfix 2023-05-31 21:11:09 +02:00
libretroadmin 7402d6ec94 (D3D11/D3D12) Small cleanups/micro-opts 2023-05-31 20:51:03 +02:00
libretroadmin 29584b9960 Move d3d8_texture_new to d3d8.c and make it static 2023-05-31 19:43:20 +02:00
libretroadmin 923b756926 Turn inline function into macro and move it to vulkan.c 2023-05-31 19:38:49 +02:00
libretroadmin 40fb10fd4e - Move Vulkan common functions over to vulkan.c
- Fix some platforms
2023-05-31 19:32:33 +02:00
libretroadmin 4f6010bea7 COmbine font raster files and video driver files 2023-05-31 19:03:45 +02:00
LibretroAdmin 53ff913c36 Revert "Don't count frames while paused"
This reverts commit ed29ba6b32.
2023-05-31 16:47:51 +02:00
libretroadmin 8a5a59da50 Refactors, move some functions to retroarch.c and make them static 2023-05-31 16:08:31 +02:00
github-actions 698b0d6ce6 Fetch translations from Crowdin 2023-05-31 00:11:54 +00:00
libretroadmin 86d8eef0d3 Get rid of unused gfx_ctx_input struct 2023-05-31 01:13:39 +02:00
libretroadmin 696dae6e70 Refactor away some video driver functions 2023-05-31 01:09:38 +02:00
libretroadmin e70eb9ded2 Refactor video_driver_cached_frame_has_valid_framebuffer 2023-05-31 00:39:01 +02:00
libretroadmin 3737b99b05 Cleanups 2023-05-30 22:10:03 +02:00
libretroadmin de63016bd3 (xshm_gfx) Silence warning 2023-05-30 21:29:21 +02:00
libretroadmin 37190f8036 Header uniformity cleanups 2023-05-30 21:21:05 +02:00
libretroadmin c0ba738f0d Header uniformity - enums on top, then structs, then public declarations 2023-05-30 21:03:36 +02:00
libretroadmin c07e6a6da2 Cleanups 2023-05-30 20:30:37 +02:00
libretroadmin 862acd7160 rjson_optional_skip - fix code 2023-05-30 19:45:15 +02:00
libretroadmin 3f992de8a6 Silence warning 2023-05-30 19:39:12 +02:00
libretroadmin 72bd1a2ba4 (libretro-common) Resync 2023-05-30 19:34:55 +02:00
Eric Warmenhoven 119230e84b Don't include MoltenVK in Load Core menu list 2023-05-30 19:06:18 +02:00
sonninnos ed29ba6b32 Don't count frames while paused 2023-05-30 19:05:43 +02:00
libretroadmin 7f55153457 take_screenshot - make function somewhat more readable 2023-05-30 12:26:52 +02:00
libretroadmin c09fb6d95d Cleanups 2023-05-30 12:19:53 +02:00
github-actions dbd7153526 Fetch translations from Crowdin 2023-05-30 00:11:38 +00:00
sonninnos 59a8718482 Add missing menu visibility option for content dir override 2023-05-29 22:22:39 +02:00
libretroadmin 6c10d92e1f Cleanups 2023-05-29 19:44:57 +02:00
libretroadmin b2dff50d8a Cleanups 2023-05-29 19:39:27 +02:00
Colin Kinloch 402b381c9b Revert "(Wayland) Remove splash screen (#15178)"
This reverts commit f19def349f.
2023-05-29 19:16:21 +02:00
libretroadmin 85011c782e move vulkan context driver code to vulkan.c 2023-05-29 19:13:47 +02:00
libretroadmin c24744eae5 Remove video_driver_show_mouse/hide_mouse 2023-05-29 18:58:23 +02:00
libretroadmin cedcd70c63 Fix function declaration without a prototype warnings 2023-05-29 15:34:37 +02:00
libretroadmin 735500ff66 Warning fixes and style nits 2023-05-29 15:30:54 +02:00
Eric Warmenhoven b8fe2ccd10 Update to MoltenVK 1.2.4 2023-05-29 09:30:02 +02:00
Eric Warmenhoven ed448a3f0f Haptic feedback for overlay on iOS 2023-05-29 09:29:41 +02:00
libretroadmin 8c9c9b3845 Localize string and other cleanups 2023-05-28 23:48:26 +02:00
libretroadmin 336025bd3c Get rid of RARCH_CTL_HAS_SET_SUBSYSTEMS 2023-05-28 23:26:55 +02:00
vanfanel dd4148773d Create callback only when needed, and correct brace style. 2023-05-28 23:19:13 +02:00
vanfanel 155d2c9ada [Wayland+GL] Add frame callback after egl_swap_buffers to improve latency when max_swapchain<=2. 2023-05-28 23:19:13 +02:00
libretroadmin c4d22cf51f Simplification 2023-05-28 22:45:46 +02:00
libretroadmin 90115e2dc9 Silence warnings; code cleanups 2023-05-28 22:43:33 +02:00
libretroadmin 5e94d81f33 gfx_display_font_free - useless wrapper function 2023-05-28 22:26:21 +02:00
libretroadmin a6c54a8e54 Simplify gfx_display_get_widget_pixel_scale - code was only ever called from XMB 2023-05-28 22:07:48 +02:00
libretroadmin fe05fad714 (gfx_display) Cleanups 2023-05-28 21:59:50 +02:00
libretroadmin 3b823d18d5 Simplify some code in gfx_display.c 2023-05-28 21:34:57 +02:00
libretroadmin 976d7b8067 Get rid of some useless wrapper functions 2023-05-28 17:56:28 +02:00
libretroadmin 8844c991e1 Cleanups 2023-05-28 16:36:50 +02:00
zoltanvb e0a8d403f1 Support screen refresh rate with Vulkan KHR_Display context 2023-05-28 14:18:51 +02:00
Bernhard Schelling 520e4400b7 Don't initialize rcheevos memory unless used 2023-05-28 05:23:12 +02:00
Bernhard Schelling 18f79a8a8d Allow RETRO_ENVIRONMENT_SET_MEMORY_MAPS also after core startup
Change the comment in libretro.h about the removed limit and handle the environment call during core runtime in RetroArch.
2023-05-28 05:23:12 +02:00
miguedevel 22de73da3b Fix NULL related crash on CRT Switchres code
gfxctx.ident returns NULL on Windows but there's no check for this
2023-05-28 05:22:50 +02:00
gouchi 63101fd886 Add SerenityOS to the list of supported operating systems
- Sort list
- [Serenity OS patches](https://github.com/SerenityOS/serenity/tree/master/Ports/RetroArch/patches)
- [Libretro cores for SerenityOS](https://github.com/gouchi/libretro-cores-serenityos) If somebody wants to help ;)
2023-05-28 05:22:37 +02:00
github-actions e0cbcaf779 Fetch translations from Crowdin 2023-05-28 00:12:39 +00:00
Eric Warmenhoven 6a1320bcfb On mobile in portrait mode, don't override custom viewport 2023-05-27 02:50:32 +02:00
Eric Warmenhoven 6506b65ce7 Fix #15316 - on iOS, stop/start audio on interruptions 2023-05-26 03:27:31 +02:00
github-actions 45d9f91212 Fetch translations from Crowdin 2023-05-26 00:11:00 +00:00
github-actions 755430efcc Fetch translations from Crowdin 2023-05-25 00:11:22 +00:00
github-actions 274f6f8aaa Fetch translations from Crowdin 2023-05-24 00:11:04 +00:00
libretroadmin 3517091a1e (menu_explore.c) Cleanups 2023-05-24 01:52:04 +02:00
libretroadmin c7a3581ee5 Bugfix for earlier commit 2023-05-24 01:03:08 +02:00
libretroadmin 4cc6ba8482 (Menu Explore) Small cleanups 2023-05-24 00:47:02 +02:00
github-actions 0513179001 Fetch translations from Crowdin 2023-05-23 00:11:43 +00:00
github-actions 036d3601df Fetch translations from Crowdin 2023-05-22 00:12:00 +00:00
Eric Warmenhoven b1503c6fc0 Add accelerometer and gyroscope sensors to iOS 2023-05-21 23:18:34 +02:00
sonninnos 997eae88a0 Fix menu refresh in action_ok_network 2023-05-21 23:18:21 +02:00
sonninnos f11bcfa420 Wasapi + MIDI + Frame Delay correction 2023-05-21 02:19:27 +02:00
github-actions 98a255be16 Fetch translations from Crowdin 2023-05-21 00:12:03 +00:00
zoltanvb 23764bb199 menu_st missing for WIFI option fails to build #15281
Trivial fix, problem introduced in https://github.com/libretro/RetroArch/commit/91ea92e50bd4f442b1eeceeea7c0e80bc7ee9d0f#diff-04dc75103003c9b5168602965b9499bb5806ce3e8d0e5739aa0e2c71f409b335
2023-05-20 17:58:18 +02:00
sonninnos bd3bfbb99b Add shortcut to core info in content info 2023-05-20 17:58:08 +02:00
github-actions d2e4dc0c22 Fetch translations from Crowdin 2023-05-20 00:10:57 +00:00
zoltanvb afa0e389aa Display server for KMS
Add a display server construct for DRM/KMS mode. The main use is
to provide resolution changes (including automatic refresh rate
switch) for this configuration, i.e. DRM context and OpenGL drivers.

To enable refresh rate restoration after automatic refresh rate
change, av_info->timing_fps is also adjusted on core close / RA exit.

No effects expected on CRTSwitchRes.
2023-05-19 17:34:25 +02:00
sonninnos 6be1ef5d85 Correct rotated core provided aspect ratio 2023-05-19 17:17:30 +02:00
sonninnos cc1bc25349 Minor adjustments to refresh rate switch behavior 2023-05-19 04:20:16 +02:00
github-actions c949259a11 Fetch translations from Crowdin 2023-05-19 00:11:25 +00:00
Eric Warmenhoven 34d322ffa9 Small tweaks/fixes to update-cores.sh for iOS/tvOS 2023-05-18 03:16:37 +02:00
github-actions e37caf9053 Fetch translations from Crowdin 2023-05-17 00:12:01 +00:00
Eric Warmenhoven 13fc4cbda3 Don't unnecessarily sign iOS/tvOS cores/libraries 2023-05-16 18:56:25 +02:00
Eric Warmenhoven 9d697fedcb Script to download/update cores in iOS/modules and tvOS/modules 2023-05-16 12:56:07 +02:00
Rob Loach b6dc368827 Fix linuxraw_joypad snprintf warning 2023-05-16 12:55:52 +02:00
Rob Loach 39fa89b214 Fix parport_joypad snprintf warning 2023-05-16 12:55:40 +02:00
github-actions b206598c10 Fetch translations from Crowdin 2023-05-16 00:11:26 +00:00
Jamiras 8b439e997b second attempt to fix PS4 build 2023-05-15 03:41:45 +02:00
Jamiras fce7ae8b4d attempt to fix PS4 build 2023-05-15 03:41:45 +02:00
Jamiras e2e193290c show tracker 2023-05-15 03:41:45 +02:00
Jamiras c6d214be0d add config setting 2023-05-15 03:41:45 +02:00
github-actions 14a3e0e851 Fetch translations from Crowdin 2023-05-15 00:11:26 +00:00
github-actions a72e25a314 Fetch translations from Crowdin 2023-05-14 00:12:01 +00:00
sonninnos 9eb083a864 Stop always reseting to defaults on remap delete 2023-05-12 15:27:10 +02:00
Eric Warmenhoven 3b4acbe5fa Also handle tap events on tvOS 2023-05-12 04:42:20 +02:00
Eric Warmenhoven 7242600a0b Back up retroarch.cfg to NSUserDefaults on tvOS. 2023-05-12 04:42:20 +02:00
Eric Warmenhoven d5a86e2363 iOS needs to targets 13 due to some keyboard emulation, but tvOS does not 2023-05-12 04:42:20 +02:00
libretroadmin fe529ff591 Refactor away menu_driver_list_cache 2023-05-12 01:00:08 +02:00
libretroadmin b105fa5a4f Make one function static 2023-05-11 23:14:36 +02:00
libretroadmin b2582f443f Move macro outside of HAVE_OVERLAY 2023-05-11 17:03:02 +02:00
libretroadmin 7db9a4acfa Header cleanups 2023-05-11 05:45:04 +02:00
libretroadmin f2bb150b0a Get rid of some menu_driver_ctl calls 2023-05-11 05:22:17 +02:00
libretroadmin 56a44b2bd1 Fix ifdef for D3D12 hardware context 2023-05-11 03:35:12 +02:00
libretroadmin c78e83978a Refactor menu_entries_ctl into menu_entries_clear 2023-05-11 03:29:45 +02:00
libretroadmin 0f97bf52b9 Create menu_displaylist_refresh 2023-05-11 02:07:56 +02:00
libretroadmin 07cb5f4e98 Remove MENU_ENTRIES_CTL_SET_REFRESH 2023-05-11 01:58:30 +02:00
libretroadmin c3b16e1803 Get rid of MENU_ENTREIS_CTL_UNSET_REFRESH and
MENU_ENTRIES_CTL_GET_REFRESH
2023-05-11 01:18:26 +02:00
Eric Warmenhoven 22dc543364 tvOS has its own beautiful screensavers and I would like them 2023-05-10 22:00:23 +02:00
libretroadmin 9f5a73ef07 Silence warnings and fix Android build 2023-05-10 21:59:50 +02:00
libretroadmin 91ea92e50b Get rid of some menu_driver_ctl commands 2023-05-10 21:30:09 +02:00
libretroadmin 6556dc8950 (XMB) Remove unnecessary menu_driver_ident check 2023-05-10 19:20:45 +02:00
libretroadmin 6952f0709a Some simplifications 2023-05-10 19:13:46 +02:00
libretroadmin 3706c4e464 Cleanups 2023-05-10 19:03:16 +02:00
libretroadmin 1ad253e81a Get rid of menu_input_{get|set}_selection 2023-05-10 18:45:49 +02:00
sonninnos 38895600dc (XMB) Fix menu wallpaper option + override 2023-05-10 18:05:42 +02:00
Eric Warmenhoven dda7776252 tvOS Siri remote handling
It's not really usable as a game controller, but it is good for going
through the menu as a simple LRUD.

This also adds better support for names of mFI controllers, as well as
being able to do the expected tvOS behavior of "backing out" of the app.
2023-05-10 08:41:09 +02:00
libretroadmin 0674613d28 Change return types of menu_driver_list_get_selection/get_size
and simplify struct
2023-05-10 08:36:44 +02:00
libretroadmin 5de30567a1 Get rid of MENU_ENTRIES_CTL_SETTINGS_GET 2023-05-10 07:28:14 +02:00
libretroadmin 74ad3723f9 Get rid of more extraneous menu wrapper functions 2023-05-10 06:37:40 +02:00
libretroadmin 6c22249ae9 Get rid of menu_entries_get_selection_buf_ptr and menu_entries_get_size 2023-05-10 05:52:52 +02:00
libretroadmin 29329ba62f remove menu_entries_get_stack_size 2023-05-10 05:03:40 +02:00
libretroadmin 9861073363 Get rid of menu_entries_get_menu_stack_ptr 2023-05-10 04:48:27 +02:00
libretroadmin a1e4918288 Cleanups 2023-05-10 04:18:00 +02:00
libretroadmin f550e12747 Fix issues in code 2023-05-10 03:47:37 +02:00
github-actions ada1f1137b Fetch translations from Crowdin 2023-05-10 00:11:19 +00:00
libretroadmin f89738e9a0 (menu_cbs_ok.c) Cleanups 2023-05-09 05:21:59 +02:00
libretroadmin c09268f4f4 Turn some functions static 2023-05-09 04:58:06 +02:00
libretroadmin 08f71a9b1e (Menu) Cleanups - make functions static and remove some unnecessary
wrapper functions
2023-05-09 04:41:12 +02:00
github-actions 9df34788e7 Fetch translations from Crowdin 2023-05-09 00:12:06 +00:00
libretroadmin 45947a0534 Turn function static 2023-05-08 23:20:19 +02:00
libretroadmin e613d05da7 Remove some gfx_display_{set|get}_ functions 2023-05-08 22:17:18 +02:00
Eric Warmenhoven 994a2ea108 AltKit support for tvOS 2023-05-08 18:35:43 +02:00
Eric Warmenhoven 23211dc1a1 Enable AltServer JIT for builds installed by Xcode 2023-05-08 18:35:43 +02:00
sonninnos 47d71646c9 Add menu scroll home+end actions 2023-05-08 15:25:51 +02:00
github-actions 907724b184 Fetch translations from Crowdin 2023-05-08 00:11:04 +00:00
libretroadmin baba57c10a Cleanups 2023-05-08 00:08:44 +02:00
libretroadmin ced83c41e6 (Font) Less casting 2023-05-07 21:13:44 +02:00
sonninnos e806e7e7a8 (RGUI) Implement 'Remember Selection' option 2023-05-07 19:39:30 +02:00
libretroadmin a0292c1db4 (Font) Some simplifications 2023-05-07 18:54:39 +02:00
Eric Warmenhoven 1b3f9b84d9 Add AltKit back in as checked-in code 2023-05-07 16:55:48 +02:00
Eric Warmenhoven cd9fd1ec9b Revert AltKit package dependency 2023-05-07 16:55:48 +02:00
Eric Warmenhoven 868505b701 Fix thumbnails in history on iOS 2023-05-07 14:36:23 +02:00
sonninnos 47edfb5702 Video settings menu cleanup 2023-05-07 14:36:02 +02:00
libretroadmin 2304faf7f0 (D3D12) Undo commit a79dc19b6c - allows us to
set RGUI aspect ratio again and internal upscale - going from upscaling
to no upscaling causes a crash though
2023-05-07 05:41:25 +02:00
libretroadmin 5ac380ec39 (D3D10) Fix RGUI 2023-05-07 03:50:18 +02:00
github-actions 80fed3f44f Fetch translations from Crowdin 2023-05-07 00:12:08 +00:00
libretroadmin dfc157d1d0 Small cleanups 2023-05-06 23:19:39 +02:00
libretroadmin 80b640f62e Get rid of unnecessary function 2023-05-06 22:29:44 +02:00
libretroadmin 099f33e0b3 (Menu) Simplifications 2023-05-06 22:10:55 +02:00
libretroadmin 02a849d440 Move RGUI specific code to RGUI file 2023-05-06 20:16:59 +02:00
libretroadmin 42370ac57e Android buildfix 2023-05-06 18:35:55 +02:00
libretroadmin 6d9482f3f0 (Menu) Cut down on small superfluos wrapper functions 2023-05-06 17:19:40 +02:00
sonninnos 99375ff787 Try to declutter Quick Menu 2023-05-06 07:46:27 +02:00
libretroadmin ead88eebfe (Menu) Get rid of a bunch of useless wrpaper function calls 2023-05-06 07:39:20 +02:00
libretroadmin fe8221a259 (D3D12) Remove unused function 2023-05-06 03:18:11 +02:00
libretroadmin bf370ce284 Turn more functions static 2023-05-06 02:34:02 +02:00
libretroadmin ec8aa8e186 Turn functions static 2023-05-05 22:03:41 +02:00
libretroadmin aef8e1d9a8 Add TODO/FIXME - localize notes 2023-05-05 20:15:16 +02:00
sonninnos 4ce384b42d (RGUI) Fix savestate thumbnail fullscreen cancel action 2023-05-05 14:41:47 +02:00
sonninnos 19a417434a (RGUI) Fix and add toggle for playlist thumbnails 2023-05-05 14:41:47 +02:00
github-actions 51a0d1086a Fetch translations from Crowdin 2023-05-04 00:10:43 +00:00
libretroadmin 207dfe170c Small cleanups 2023-05-03 21:10:21 +02:00
sonninnos c8fb30ebe5 (Ozone) Return to sidebar from playlist manage quick access 2023-05-03 20:57:43 +02:00
sonninnos 8f5442da5b Improve CLI scan console output 2023-05-03 20:29:40 +02:00
sonninnos f5f1d35370 Add content import/scan via CLI 2023-05-03 20:29:40 +02:00
github-actions 15e04b8767 Fetch translations from Crowdin 2023-05-03 00:10:49 +00:00
barbudreadmon 3036c47034 (video_driver) fix windowed viewport with libretro rotation (#15247)
* (video_driver) fix viewport with libretro rotation
2023-05-02 17:02:08 +02:00
sonninnos 33c4873b5b (Ozone) Add quick access to playlist manager from sidebar (#15246) 2023-05-02 14:50:02 +02:00
github-actions e686c0d652 Fetch translations from Crowdin 2023-05-02 00:11:15 +00:00
libretroadmin d64f11a0f7 menu_update_fullscreen_thumbnail_label - some refinements 2023-05-02 00:21:37 +02:00
libretroadmin e61f495b0a Replace some snprintf calls 2023-05-02 00:12:04 +02:00
Carlo Refice 3f9a85d997 Fix rumble on PS4/PS5 controllers connected via bluetooth (#15244) 2023-05-01 23:37:26 +02:00
libretroadmin 6b93152253 * Add some TODO/FIXME localize notes
* some snprintf refactors
2023-05-01 20:49:32 +02:00
libretroadmin e7e647d181 (Joypad drivers) Simplifications - put char string outside loop 2023-05-01 20:33:38 +02:00
libretroadmin b951a010fd Move strftime_am_pm to libretro-common and get rid of duplicated
function
2023-05-01 19:03:11 +02:00
sonninnos b2ff445531 (Ozone) Sidebar multiline scrolling (#15242) 2023-05-01 05:26:31 +02:00
kikmonandpapa d446f39c63 [PS1 Scanning] Serial extraction is now considered a failure if PSX.EXE is found, allowing CRC fallback and actually fixing the game scanning (#15241)
Co-authored-by: papa <anonymous>
2023-04-30 23:36:50 +02:00
libretroadmin 19f57716f1 Minor cleanups 2023-04-30 19:35:49 +02:00
libretroadmin c087b044c2 * Add TODO/FIXME localize notes
* More snprintf optimizations
2023-04-30 19:30:07 +02:00
libretroadmin 907efccb05 Another buildfix 2023-04-30 18:01:49 +02:00
libretroadmin 3f2c15d6d6 Buildfix 2023-04-30 17:59:32 +02:00
libretroadmin 254773339b Silence some unused variable warnings 2023-04-30 17:43:46 +02:00
libretroadmin 3871ac4455 * Add FIXME LOCALIZE notes
* Some snprintf optimizations
2023-04-30 17:26:57 +02:00
github-actions 5e3161ea3c Fetch translations from Crowdin 2023-04-30 00:12:28 +00:00
libretroadmin 04833f54b5 settings - remove unused ST_HEX 2023-04-29 16:20:08 +02:00
libretroadmin 246af45939 (menu_displaylist) Cleanups 2023-04-29 15:25:55 +02:00
libretroadmin 31f3588f00 rarch_setting - Reduce size of flag variables 2023-04-29 14:38:31 +02:00
libretroadmin 53a1ff446d Turn another function static 2023-04-29 14:38:31 +02:00
libretroadmin dfd0d6b14a Turn another function static 2023-04-29 14:38:31 +02:00
libretroadmin 138784a32d Turn another function static 2023-04-29 14:38:31 +02:00
libretroadmin 1a91aabd08 (menu_driver) Turn more functions static 2023-04-29 14:38:31 +02:00
libretroadmin 661f315aa8 (Menu) Turn some functions static 2023-04-29 14:38:31 +02:00
libretroadmin 6f457a570b (runtime_file.c) Turn function static and add return value 2023-04-29 14:38:31 +02:00
github-actions a452f6fb29 Fetch translations from Crowdin 2023-04-29 00:10:37 +00:00
libretroadmin 01cd40b1fc Increase conf_key_base size a bit 2023-04-28 20:21:08 +02:00
libretroadmin cce75e274f (task_overlay) Cut down on snprintfs 2023-04-28 20:18:53 +02:00
libretroadmin 47e5fa59ca (menu_displaylist) Cleanups 2023-04-28 17:37:17 +02:00
libretroadmin 242bdf9e1c (menu_displaylist) Cleanups 2023-04-28 17:05:32 +02:00
warmenhoven e9faa3df50 Fix silly mistake, tvos needs tvos cores (#15238) 2023-04-28 15:58:58 +02:00
libretroadmin 1db2f20665 Clean warnings 2023-04-28 02:11:52 +02:00
warmenhoven 71748d27f5 Pre-resolve AltKit swift package (#15236) 2023-04-28 02:08:23 +02:00
warmenhoven 5eddcfee48 The default pthread stack size on Apple is too small for detect_ps2_game (#15235) 2023-04-27 21:16:36 +02:00
libretroadmin c400fa761c (UI companion driver) Remove unused notify_content_loaded 2023-04-27 03:02:00 +02:00
github-actions 86e7aa5280 Fetch translations from Crowdin 2023-04-27 00:12:10 +00:00
Antoine Boucher 513cd25cb3 Update README.md (#15231) 2023-04-27 01:44:52 +02:00
David G. F 5fec32649f Fix bug introduced in f13cf9 regarding non-compressed ZIPs (#15230)
This happens on platforms with HAVE_MMAP (Linux/Mac) and with ZIPs that
contain uncompressed files.
2023-04-26 21:56:51 +02:00
libretroadmin bce958780d Remove unused ui_companion_notify_list_loaded - and menu_list member
from menu_displaylist_info
2023-04-26 20:21:07 +02:00
sonninnos fae7ac8241 Change network port menu options to 'allow_input' mode (#15227) 2023-04-26 09:09:58 +02:00
github-actions ef8e3c7f28 Fetch translations from Crowdin 2023-04-26 00:11:19 +00:00
libretroadmin a385ff4444 (menu_displaylist) menu_displaylist_info - remove need of 'count'
member variable
2023-04-26 01:57:08 +02:00
libretroadmin 7a0e8788e0 (Menu) menu_displaylist refactors pt. 2 2023-04-26 01:57:08 +02:00
warmenhoven 295e5f0682 JIT support in iOS (#15224)
* Use AltKit to try to enable JIT on iOS

* libretro: Add API to check JIT availability on iOS
2023-04-26 01:55:37 +02:00
sonninnos ad079538a4 Fix menu toggle combo hold with same 'enable_hotkey' (#15226) 2023-04-26 01:54:44 +02:00
Jamiras 4210edc228 eliminate leaderboard tracker stutter (#15223) 2023-04-25 19:03:20 +02:00
libretroadmin c35fddad86 (menu_displaylist) Refactors 2023-04-25 15:06:56 +02:00
libretroadmin 8a6584d0df (menu) menu_displaylist_build_list - cleanups 2023-04-25 14:19:58 +02:00
libretroadmin 08d1b847fd (D3D12) Go through local variables for graphics command list 2023-04-25 14:08:21 +02:00
David G. F f13cf92341 Improve ZIP decompression (#15220)
This reduces the amount of memory Retroarch needs to extract a ROM file.
It will only need the size of the ROM plus 128KiB to extract the file
from the ZIP. Previously it needed as much as twice that amount if the
compression ratio was not great. This is useful on memory constrained
platforms and has no impact on platforms with plenty of memory.

Handles all cases correctly (with and without MMAP, for cores that
require fullpath or not, small and big ZIP files).
2023-04-25 13:17:18 +02:00
github-actions fc5d16f5a4 Fetch translations from Crowdin 2023-04-25 00:13:28 +00:00
libretroadmin dcefb6e028 (D3D12) Get rid of the small inline wrapper functions 2023-04-24 18:11:26 +02:00
MrHuu 6a97eb91cf (3DS) Update __system_initArgv (#15219) 2023-04-24 16:12:37 +02:00
libretroadmin 2a5c419d38 Cleanup d3d12_heap_descriptor_alloc 2023-04-24 10:54:46 +02:00
libretroadmin cff5ea2a9b (video_driver/HDR) Remove unused helper functiosn 2023-04-24 10:54:46 +02:00
libretroadmin ca164d1b0f Minor cleanup in video_driver.c - call get_viewport_info directly 2023-04-24 10:54:46 +02:00
libretroadmin ba9e78fe99 (menu_displaylist) Cleanups 2023-04-24 10:54:46 +02:00
github-actions 99e0d360e4 Fetch translations from Crowdin 2023-04-24 00:11:51 +00:00
libretroadmin 4d2a7f4dd0 (Menu) menu_displaylist_build_list - simplifications, less LOC 2023-04-23 17:30:55 +02:00
libretroadmin 07eddd7229 Cleanups 2023-04-23 16:09:24 +02:00
libretroadmin 1f2bd96459 (video_shader_parse.c) Namespace some functions, random misc cleanups 2023-04-23 11:24:03 +02:00
libretroadmin 7ebc68be6f (drivers_font) Cleanups/style nits 2023-04-23 11:10:07 +02:00
libretroadmin 238f887931 Get rid of initial for loop C89 noncompliance
* uwp_main.c - code style cleanups
2023-04-23 10:47:09 +02:00
libretroadmin 182ab1a82e Small misc cleanups - some C89 compliance fixes 2023-04-23 09:11:26 +02:00
libretroadmin 258ac6de4a Expand menu_displaylist_build_list 2023-04-23 09:01:52 +02:00
libretroadmin 11cab12d59 Cleanups 2023-04-23 08:29:33 +02:00
libretroadmin 3b8791f0ad Remove unused functions in menu_setting.c 2023-04-23 08:08:00 +02:00
zoltanvb 80296a60a2 Remove language specific msg_hash_xx.c files (#15218)
After PR #14821 , the contents of msg_hash_xx.c files are present
in the normal translation workflow. Since that time, almost all
languages have either caught up on Crowdin, or are still on such
low level of translation completeness, that removing these entries
does not harm usability.

Only Chinese Simplified and Portuguese Brazilian languages remain
in separate files, as they may still be considered an improvement
over Crowdin status.

See also commit 568ffac8f6.
2023-04-23 07:59:56 +02:00
github-actions 79384b39ec Fetch translations from Crowdin 2023-04-23 00:12:13 +00:00
github-actions 6aa6785428 Fetch translations from Crowdin 2023-04-22 00:11:47 +00:00
github-actions c6161118ec Fetch translations from Crowdin 2023-04-21 00:10:38 +00:00
Felipe Tavares ea81928e39 Fast-Forward Audio Resampling (#15173)
* 🎵 Fast forward audio resampling. Solves #15160.

Previously, we avoided doing any resampling while fastforwarding based
on the assumption it was impossible to make the audio not crackle due to
both flush-to-flush timing fluctuations and timer accuracy.

However, turns out this is not the case. The audio doesn't "crackle" per
se when the timing fluctuates! It's just that the sounds don't make
sense since the time compression and decompression caused by the flush
time fluctuations mess with the audio consistency.

To work around that, we introduce a running average flush delta time
that makes sure the audio is both resampled to approximately the correct
rate and consistent.

This was tested in two settings:

- Limited rate fastforwarding (2x-4x)
- Unlimited fastforwarding

In both cases it seems to work well, but with unlimited fastforwarding
it's just high pitched and annoying, so this is probably the most useful
in the 2x to 4x range.

* Move declartion to support C89

* resampling ratio upper and lower bounds

* Add toggle for speeding up audio
2023-04-20 17:14:47 +02:00
github-actions 91765d5ca5 Fetch translations from Crowdin 2023-04-20 00:11:18 +00:00
github-actions b715cf1a46 Fetch translations from Crowdin 2023-04-19 00:11:41 +00:00
github-actions 97ad745f15 Fetch translations from Crowdin 2023-04-18 00:11:13 +00:00
libretroadmin 52ba0fce34 Cleanups/variable cleanups/less snprintf calls 2023-04-17 15:26:30 +02:00
libretroadmin 0849a51ecc Small cleanups 2023-04-17 15:04:46 +02:00
sonninnos a8994860fc Reinit audio on audio sync toggle (#15204) 2023-04-17 04:24:00 +02:00
github-actions bdc34f2046 Fetch translations from Crowdin 2023-04-17 00:11:49 +00:00
Jamiras 8ea9651d09 (cheevos) expand leaderboard visibility settings (#15201)
* migrate cheevos_leaderboard_enabled setting to cheevos_visibility_lboard_X

* provide translatable strings for leaderboard messages
2023-04-16 19:44:46 +02:00
github-actions 19aeb52cbc Fetch translations from Crowdin 2023-04-16 00:12:25 +00:00
sonninnos 3c37da6bd1 Start directory browsing from current value (#15199) 2023-04-15 20:01:04 +02:00
warmenhoven 11a7cc9d23 Include audio and video filters in ios/tvos bundles (#15197) 2023-04-15 11:55:46 +02:00
github-actions 800094b750 Fetch translations from Crowdin 2023-04-15 00:11:54 +00:00
sonninnos 5722d90a38 Show version in System Information + help/log version reformat (#15195) 2023-04-14 21:28:09 +01:00
sonninnos dd106c4f4a Show current video + audio drivers in statistics (#15193) 2023-04-14 20:15:54 +02:00
sonninnos e2a264700a Audio output menu item reinit fix (#15190) 2023-04-14 07:18:21 +02:00
sonninnos 07c371533f WASAPI Frame Delay fix + cleanups (#15187) 2023-04-13 20:20:47 +02:00
Hennadii Chernyshchyk 4d8db0b5b8 Enable networking for RG350 (#15182) 2023-04-11 17:31:49 +02:00
aliaspider 50b9454f69 d3d12: enable blending when drawing the menu. (#15181) 2023-04-11 06:56:48 +01:00
github-actions 4dc9c1da0c Fetch translations from Crowdin 2023-04-11 00:10:59 +00:00
libretroadmin d48bd7244a Libretro API update - add new context hardware render enums - enables
autodetection of DX12 for PS2 core
2023-04-11 00:54:02 +02:00
Colin Kinloch f19def349f (Wayland) Remove splash screen (#15178) 2023-04-10 16:37:48 +02:00
aliaspider a79dc19b6c D3D12: move fence signaling out of d3d12_gfx_sync. (#15179) 2023-04-10 16:37:36 +02:00
Colin Kinloch e8ec3031a8 (Wayland) wp_viewporter + scaling fix (#15176)
* Use wp_viewporter
* Set buffer scale to highest of displays the window is touching
* Fixes fullscreen issue mentioned in #15168
* Simplify process of adding new wayland protocols
2023-04-10 06:29:41 +01:00
github-actions 7874a64529 Fetch translations from Crowdin 2023-04-10 00:10:49 +00:00
aliaspider 0adbd6905f add D3D12 HW_render support. (#15177) 2023-04-10 01:08:44 +01:00
zoltanvb 4350ec24be Support device list for PulseAudio (#15174)
As mentioned in https://github.com/libretro/RetroArch/issues/14954,
audio device selection works only if respective functions are
implemented in audio driver.

Added sink listing and selection. Common menu code takes care of the rest.
2023-04-09 18:15:48 +01:00
libretroadmin c247e6f3d6 Bump max users to 8 2023-04-09 19:08:33 +02:00
Colin Kinloch d625ca3762 (Wayland) Only display splash when necessary (#15168) 2023-04-08 02:41:07 +01:00
github-actions 2f4ae88b06 Fetch translations from Crowdin 2023-04-08 00:10:38 +00:00
mudlord e5ae518572 Remove mudlord. (#15164) 2023-04-07 06:05:11 +01:00
CyberLabSystems 364356dde6 CyberLab Custom Blargg NTSC Video Filter Preset Update (#14426)
* Update and rename Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_Composite.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_Composite.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.
Remove "PSX" from the filename because it doesn't seem to work with any currently available PSX core.

* Update and rename Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_S-Video.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_S-Video.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.
Remove "PSX" from the filename because it doesn't seem to work with any currently available PSX core.

* Update and rename Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_RGB.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_RGB.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.
Remove "PSX" from the filename because it doesn't seem to work with any currently available PSX core.

* Update Blargg_NTSC_SNES_Custom_pseudo_MD_S-Video.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.

* Update Blargg_NTSC_SNES_Custom_pseudo_MD_Composite.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_Composite.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_Composite.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.

Revert filename to include "PSX" becsuse it works under certain conditions based on feedback.

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_RGB.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_RGB.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.

Revert filename to include "PSX" becsuse it works under certain conditions based on feedback.

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_S-Video.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_S-Video.filt

Change "their" to "his" in the credits because it's the appropriate pronoun.

Revert filename to include "PSX" becsuse it works under certain conditions based on feedback.

* Delete e -i HEAD~5

Remove because it's just a garbage file.

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_Composite.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_Composite.filt

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_RGB.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_RGB.filt

* Rename Blargg_NTSC_SNES_Custom_pseudo_PCE_SNES_PSX_S-Video.filt to Blargg_NTSC_SNES_Custom_pseudo_PCE_PSX_SNES_S-Video.filt
2023-04-07 02:08:55 +01:00
github-actions b133bf8834 Fetch translations from Crowdin 2023-04-07 00:10:51 +00:00
Jamiras 2a7480d1e0 collapse trackers with same value definition (#15163) 2023-04-06 22:36:38 +02:00
warmenhoven 486c5d5cba Compile dsp/video filters built in on osx (#15161) 2023-04-06 15:18:40 +02:00
warmenhoven 29842aabdc Fix steam osx core path (#15158) 2023-04-06 06:06:10 +02:00
Jamiras 08a5288144 upgrade to rcheevos 10.7 (#15152) 2023-04-04 15:06:44 +01:00
warmenhoven 54055558f1 Fix several warnings (#15153) 2023-04-04 15:06:34 +01:00
OsirizX 6cc05ab5ce (PSL1GHT) Add overlay support (#15149) 2023-04-04 15:05:59 +01:00
libretroadmin f46beade21 (Android) Buildfix 2023-04-03 22:47:50 +02:00
libretroadmin 96a4417e38 (Vulkan) vulkan_surface_create - we already set all members of this
struct - memset unnecessary
2023-04-03 20:51:41 +02:00
libretroadmin 223f063894 Simplify win32_common.c 2023-04-03 20:26:04 +02:00
github-actions e5737ce18d Fetch translations from Crowdin 2023-04-03 00:11:10 +00:00
Valentin b0b5a40d44 add overlay parameter to control x/y separation in auto-scale mode (#15106) 2023-03-31 01:33:39 +01:00
github-actions d28417ca84 Fetch translations from Crowdin 2023-03-31 00:11:35 +00:00
github-actions 0817022d95 Fetch translations from Crowdin 2023-03-30 00:11:39 +00:00
github-actions dc72ab6ae3 Fetch translations from Crowdin 2023-03-29 00:13:17 +00:00
github-actions dd62f3a9fb Fetch translations from Crowdin 2023-03-28 00:12:21 +00:00
aliaspider d3fad528ce fix memory corruption in d3d11_gfx_init. (#15139) 2023-03-27 16:04:55 +01:00
github-actions 3a41738b61 Fetch translations from Crowdin 2023-03-27 00:11:47 +00:00
barbudreadmon 1fb9853a93 (Shaders) pass rotation index to shaders (#15136) 2023-03-26 21:20:27 +01:00
github-actions 13785a715e Fetch translations from Crowdin 2023-03-26 00:12:10 +00:00
zoltanvb c996fe7070 Add wayland to input driver list. (#15133)
Wayland input driver was not selectable from menu. It could still be enforced by
context driver, or enabled in config file, but I saw no reason why it would be
better to skip it from here.
2023-03-25 22:42:03 +01:00
Subs f24893bcb1 [CRT] Add KMS modeswitch (#15131)
* Prepare to update deps/switchres

* Squashed 'deps/switchres/' content from commit ca72648b32

git-subtree-dir: deps/switchres
git-subtree-split: ca72648b3253eca8c5addf64d1e4aa1c43f5db94

* Add CRT modeswitching to KMS
Display the real refresh rate
Enable the CRT SwitchRes menu
Add another switchres.ini path for Lakka
2023-03-25 11:57:10 +01:00
Joe Osborn d118259589 Make cmd interface more useful for replay information (#15132)
* Add 'active replay' config get to config command and flush stdout for command replies; tweak output of play replay command

* guard on have_bsv_movie
2023-03-24 22:41:07 +01:00
Colin Kinloch 2101400bf4 (Wayland) Check for pointer before locking it (#15130)
Signed-off-by: Colin Kinloch <[email protected]>
2023-03-24 22:40:38 +01:00
Colin Kinloch a6e6ddf425 (Wayland) Update destruction (#15129) 2023-03-24 15:14:56 +01:00
Colin Kinloch eeda1f6141 (Wayland) Don't relock the pointer (#15128) 2023-03-24 05:07:48 +01:00
github-actions 7144acd26e Fetch translations from Crowdin 2023-03-24 00:11:20 +00:00
sonninnos 390ee5c3c7 (Win32) Increase maximum window limit (#15125) 2023-03-23 18:02:09 +01:00
Stephanie Gawroriski a681f0e31f Update SquirrelJME 3DS Core information along with icons. 2023-03-22 22:22:03 -04:00
github-actions b497d2c050 Fetch translations from Crowdin 2023-03-23 00:11:40 +00:00
Esoptron 38b884b7ba Update AUTHORS.h (#15117)
Modify my authors entry
2023-03-22 07:43:10 +01:00
warmenhoven 1b3c9e62aa Use same Xcode project for iOS as is used for packaging (take 2) (#15118) 2023-03-22 07:43:00 +01:00
github-actions 693435a6de Fetch translations from Crowdin 2023-03-22 00:10:15 +00:00
Colin Kinloch d2c40b48ab (Wayland) Mouse grab cleanup (#15114) 2023-03-21 14:36:24 +01:00
github-actions 90694a3cf1 Fetch translations from Crowdin 2023-03-21 00:11:10 +00:00
Manuel Alfayate CorcheteandColin Kinloch aaa53da148 [Wayland] Add mouse grab/lock functionality. (#15103)
* [Wayland] Add mouse grab functionality.

Co-authored-by: Colin Kinloch <[email protected]>
2023-03-20 11:30:04 +01:00
github-actions 8d1e575ea6 Fetch translations from Crowdin 2023-03-20 00:12:33 +00:00
zoltanvb 523c394ccb Enable language autodetect for all builds with LANGEXTRA. (#15110) 2023-03-19 21:07:11 +01:00
hunterk 2a36245e0c make ffmpeg core compile separately again and silence a couple of unused variable warnings (#15108) 2023-03-19 02:38:18 +01:00
zoltanvb ca11479f2f Fix for https://github.com/libretro/RetroArch/issues/15097 and a minor change to recognize en_GB better. (#15105) 2023-03-18 23:05:32 +01:00
sonninnos 8d12ff3cf1 Ensure statistics text is aligned left (#15102) 2023-03-18 14:56:32 +01:00
github-actions 30de5784a5 Fetch translations from Crowdin 2023-03-18 00:11:30 +00:00
LibretroAdmin 9064313897 Update CHANGES.md 2023-03-17 19:44:13 +01:00
libretroadmin b07353a0d9 Put forward declaration in wgl_ctx.c 2023-03-17 16:13:09 +01:00
libretroadmin 2902d11b1a Rewinding code should not be a forced built-in dependency 2023-03-17 16:08:41 +01:00
libretroadmin 1581ece9ea Cleanups 2023-03-17 00:03:23 +01:00
libretroadmin 0de147971a (Wayland) Cleanups 2023-03-16 18:40:17 +01:00
libretroadmin 17c1962b6f (Android) Bump up version 2023-03-16 17:09:11 +01:00
github-actions 6616b807ed Fetch translations from Crowdin 2023-03-16 00:13:09 +00:00
libretroadmin d2ac15c6db Fixes filestream_vscanf regression 2023-03-15 20:13:04 +01:00
libretroadmin b70b0deec4 Revert "(Modern Windows build) Set D3D11 as the default video driver for modern Windows"
This reverts commit f5bc0edbaa.
2023-03-15 17:06:18 +01:00
github-actions 3f19f16d97 Fetch translations from Crowdin 2023-03-15 00:11:39 +00:00
sonninnos 92dfc80327 Check for 'enable_hotkey' also from autoconf binds (#15095) 2023-03-14 18:16:53 +01:00
sonninnos a0c7f11499 (XMB) Horizontal icon animation fix (#15093) 2023-03-14 00:36:39 +01:00
sonninnos 281ccab6ee (Win32) Ignore window limiting with fixed position (#15092) 2023-03-13 23:17:47 +01:00
sonninnos da076faa47 Notification font + statistics adjustments (#15089) 2023-03-13 20:10:10 +01:00
libretroadmin dc6b6d5cdb (XAudio) Header cleanups 2023-03-13 04:23:25 +01:00
libretroadmin 88cd91c586 Cleanup some xaudio headers 2023-03-13 04:12:18 +01:00
libretroadmin f5bc0edbaa (Modern Windows build) Set D3D11 as the default video driver for modern Windows
version (Windows 7 and up)
2023-03-13 02:47:55 +01:00
libretroadmin 5c51232731 Style nit 2023-03-13 02:23:52 +01:00
libretroadmin 60dc768f78 (Replay/BSV) Fix issue #15083, and some other style nits 2023-03-13 01:34:27 +01:00
github-actions 2b7c722c11 Fetch translations from Crowdin 2023-03-13 00:12:32 +00:00
github-actions 6107dd2e02 Fetch translations from Crowdin 2023-03-12 00:12:07 +00:00
LibretroAdmin a03587d890 Update reverb.c 2023-03-11 23:00:39 +01:00
Joe Osborn be5b198692 Replay rewind fix (#15079)
* Rewind during recording isn't visibly busted anymore but it doesn't rewind the replay properly during playback or record, inputs get clobbered; check frame pos/ptr stuff.

* Fix rewinding during movie recording and playback?
2023-03-11 18:37:48 +01:00
github-actions 666fbdcb38 Fetch translations from Crowdin 2023-03-11 00:10:58 +00:00
libretroadmin 938ab716bd Bump version 2023-03-10 17:16:50 +01:00
LibretroAdmin 430a9f6eed Update CHANGES.md 2023-03-10 17:04:11 +01:00
LibretroAdmin f7b4ee492a Update CHANGES.md (Up to Feb 12) 2023-03-10 08:18:35 +01:00
github-actions 06501ebed0 Fetch translations from Crowdin 2023-03-10 00:12:33 +00:00
Joe Osborn 81b3e128ac Add checkpointing feature for replay recordings. (#15072)
If cores are not deterministic, or if they only have bounded
determinism, we can obtain less drift if replay files also contain
periodic checkpoint states.  These are configured by the new retroarch
stting replay_checkpoint_interval (measured in seconds).  States are
inserted into the replay file in between frames.

This patch also fixes the settings display for the replay
autoincrement max keep setting.
2023-03-09 23:14:02 +01:00
Colin Kinloch 297aa1ff72 (Wayland) Build pointer-constraints and relative-pointer protocols (#15071)
Signed-off-by: Colin Kinloch <[email protected]>
2023-03-09 19:54:36 +01:00
github-actions e99efba2b9 Fetch translations from Crowdin 2023-03-09 00:12:19 +00:00
Colin Kinloch e54495235e (Wayland) Wait for splash screen configuration (#14485)
* (Wayland) Wait for splash screen configuration

Signed-off-by: Colin Kinloch <[email protected]>

* (Wayland/libdecor) Remove unnecessary context creation check. Log library load.

Signed-off-by: Colin Kinloch <[email protected]>

* (Wayland) Bring xdg_toplevel configure in line with libdecor and add icon to splash screen

Signed-off-by: Colin Kinloch <[email protected]>

---------

Signed-off-by: Colin Kinloch <[email protected]>
2023-03-08 22:56:24 +01:00
warmenhoven 04b0421efc Add App Category to a few places it should have been (#15019) 2023-03-08 20:59:14 +01:00
Colin Kinloch e31b7fe6c2 (Wayland) Fix resize check (#15065)
* (Wayland) Fix resize check

Signed-off-by: Colin Kinloch <[email protected]>

* (Wayland/GL) Correct scaling on resize

Signed-off-by: Colin Kinloch <[email protected]>

* (Wayland) Fix fullscreen buffers being initially double scaled

Signed-off-by: Colin Kinloch <[email protected]>

---------

Signed-off-by: Colin Kinloch <[email protected]>
2023-03-08 20:08:31 +01:00
github-actions 51eafdd7fd Fetch translations from Crowdin 2023-03-08 00:12:19 +00:00
Joe OsbornandJoseph C. Osborn 807640fed3 Associate states with replays (#15070)
* change bsv file suffix to replay, update strings

* add trivial RPLY block to save states

* WIP rerecording support, doesn't load states properly yet--issue with checking identifiers?

* Fixed a type error to get time identifiers working right, ready for testing

* handle case where state without replay data is loaded during replay

* cleanups

* whitespace cleanup

* Cleanups, change replay file format magic, fix logic around future states

* Remove failed future message

* Add play-replay-from-slot command, fix load-state-from-slot to use given slot

* build fixes

* Fix race conditions in emscripten build and incorrect replay state incrementing

* Style fix for single line if

---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-03-08 00:10:59 +01:00
zoltanvb ed2ffb5393 Minor menu opacity fixes. (#15069)
Remove "Framebuffer opacity" from XMB as it does not use it.
Also, rename the corresponding menu title, since "framebuffer"
is not that intuitive.
2023-03-08 00:10:27 +01:00
sonninnos 17b46b5f93 (Win32) Window size improvements (#15068) 2023-03-07 16:51:08 +01:00
github-actions 01a997345f Fetch translations from Crowdin 2023-03-07 00:13:20 +00:00
LibretroAdmin 77e2cfd20c Revert "Use same Xcode project for iOS as is used for packaging (#15061)" (#15066)
This reverts commit 74bbc497ce.
2023-03-06 23:55:25 +01:00
warmenhoven 74bbc497ce Use same Xcode project for iOS as is used for packaging (#15061) 2023-03-06 19:57:26 +01:00
warmenhoven a60249ff87 Fix #15059 Compile in presence for discord (#15063)
Also relying on $TMPDIR is problematic because Discord uses
NSTemporaryDirectory() which may not be the same.
2023-03-06 19:57:08 +01:00
github-actions b59cd4fcd8 Fetch translations from Crowdin 2023-03-06 00:12:35 +00:00
sonninnos 4699d91ed5 (Win32) Use core geometry as window limit (#15060) 2023-03-05 15:21:05 +01:00
github-actions a1fdab04fb Fetch translations from Crowdin 2023-03-05 00:14:31 +00:00
github-actions 4101d8166a Fetch translations from Crowdin 2023-03-04 00:11:36 +00:00
Joe OsbornandJoseph C. Osborn 4d81f70f00 Replay nomenclature (#15054)
* change bsv file suffix to replay, update strings

* Fix bsv cli args

* Fix help whitespace

* Fix another message

---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-03-03 23:16:48 +01:00
sonninnos a256a504a8 Fix auto savestate path (#15055) 2023-03-03 23:16:20 +01:00
libretroadmin f60b3ec7a1 Fix MSVC error 2023-03-03 20:07:40 +01:00
andymcca 989359479c Fix no on-screen notifications (#15052)
This was broken in commit 083b14b85c - my bad, as I forgot to re-add the call to sdl_render_msg when reorganising sdl_gfx_frame!
2023-03-03 17:51:29 +01:00
sonninnos 84691edd3f (Win32) Limit minimum window size (#15053) 2023-03-03 17:50:30 +01:00
Gabriel Morazán 34148dab49 (UWP) Add ANGLE DLL files (#15051) 2023-03-03 10:55:24 +01:00
github-actions 7777be2ec1 Fetch translations from Crowdin 2023-03-03 01:52:38 +00:00
warmenhoven f5a2d1598a Make sure to call steam_poll. (#15050) 2023-03-03 01:53:16 +01:00
Joe OsbornandJoseph C. Osborn 2125770236 Replay UI support (#15048)
* Add bsv replay controls (not yet fully implemented), remove toggle

see notes in task_movie.c, make sure command.c calls the right
functions, check retroarch.c and other todos.

bsv files are also now stored with states, not saves.

* Compilation fixes

* Added command impls for play and record replay, and some code in load state to do the right thing there

* Guard some parts of the new code with HAVE_BSV_MOVIE

* wip, menu fixes

* more menu fixes, osd for movie errors, halt recording properly

* Menu and label fixes

* move bsvs to own file suffix series under savestates, fix recording and playback command validity checks

* Fix replay autoincrement

* fix endif placement, whoops

---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-03-03 00:52:22 +01:00
Manuel Alfayate Corchete 6e27b6f571 [Vulkan] Don't clamp the number of requested images. (#15047) 2023-03-03 00:49:02 +01:00
warmenhoven a49cf1e7e3 Break Steam mac build out into separate scheme, to avoid certain flags (#15046) 2023-03-02 20:09:36 +01:00
Jesse Talavera-Greenberg 152867d14f Revert "Fix #15039 (#15042)" (#15043)
This reverts commit c3a5a25d43.
2023-03-02 02:08:56 +01:00
github-actions 2809a1f28f Fetch translations from Crowdin 2023-03-02 00:13:14 +00:00
Gabriel Morazán 9b2a4e6c88 (UWP/Xbox) Major Build Overhaul (#15040)
* (UWP) Major Build Overhaul

* (UWP) Add Back Assets

GitHub Desktop is stupid and ignored these files

* (UWP) Fix D3D12 Regression
2023-03-01 14:13:24 +01:00
Jesse Talavera-Greenberg c3a5a25d43 Fix #15039 (#15042)
- Move the uninit_libretro_symbols call to the end
- The drivers may need access to the core for deinitialization
2023-03-01 13:34:10 +01:00
warmenhoven 8f70da6b0c OSX: Make sure to use the file system path name, not the URL name (#15038) 2023-03-01 02:01:46 +01:00
github-actions ec42d76035 Fetch translations from Crowdin 2023-03-01 00:14:45 +00:00
warmenhoven bf5739b735 More changes for Steam on Mac (#15036)
* Additional Steam build cleanups

* Fix Mac directories for Steam
2023-02-28 21:28:59 +01:00
libretroadmin 0422dfb5b5 Cleanups 2023-02-28 18:32:11 +01:00
github-actions e8d88f1b78 Fetch translations from Crowdin 2023-02-28 00:12:26 +00:00
sonninnos 9d8aee53fa (Win32) Fix restart if path has spaces (#15034) 2023-02-27 22:24:41 +01:00
Joe Osbornandthelamer a1903eee15 Emscripten pthread tweaks (#15033)
* add more documentation to emscripten, pthread support, and flag to not show asset warnings

* typo in docs

---------

Co-authored-by: thelamer <[email protected]>
2023-02-27 19:56:12 +01:00
warmenhoven 67372e0f38 Use xcodebuild -exportArchive rather than assuming archive structure (#15032) 2023-02-27 19:09:45 +01:00
warmenhoven c226392358 Another try at creating a steam build for the mac (#15031) 2023-02-27 18:09:50 +01:00
sonninnos 85fb7f9257 Add recordings to video history playlist (#15027) 2023-02-26 21:50:35 +01:00
HyperspaceMadness e4a11cff59 Shader Preset - Wildcard Replacement in Paths on Load (#15023)
When a simple preset loads, wildcards which are found in paths inside the presets will 
be replaced with values coming from the current RetroArch context.  This will operate
on both texture paths and reference paths.

This would allow you to do things like have one preset which could be used with the entire list of images from the Bezel Project

E.G. 
    "/shaders/MyBackground_$VID-DRV$ _$CORE$.png" 
would be replaced with
   "/shaders/MyBackground_glcore_YabaSanshiro.png"
If  no file found at that path, the path will revert to the original path, so operates as a fallback
   "/shaders/MyBackground_$VID-DRV$ _$CORE$.png" 

  * Possible wildcards/tokens to be replaced:
 * 
 *   $CONTENT-DIR$ -> Content Directory of the game rom
 * 
 *   $CORE$       -> Core name
 * 
 *   $GAME$       -> Game ROM's name
 * 
 *   $VID-DRV$   -> Video Driver: Currently active driver, possible replacement values:
 *       glcore
 *       gl
 *       vulkan
 *       d3d11
 *       d3d9_hlsl
 *       "N/A"
 * 
 *   $VID-DRV-SHADER-EXT$   -> Video Driver Shader File Extension: The extension of shaders type supported by the current video driver:
 *       cg
 *       glsl
 *       slang
 * 
 *   $VID-DRV-PRESET-EXT$   -> Video Driver Preset File Extension: The extension of shaders type supported by the current video driver:
 *       cgp
 *       glslp
 *       slangp
 * 
 *   $CORE-REQ-ROT$   -> Core Requested Rotation: Rotation the core is requesting, possible replacement values:
 *       CORE-REQ-ROT-0
 *       CORE-REQ-ROT-90
 *       CORE-REQ-ROT-180
 *       CORE-REQ-ROT-270
 * 
 *   $VID-ALLOW-CORE-ROT$   -> Video Allow Core Rotation: Reflects Retroarch's setting allowing the core requested rotation to affect the final rotation:
 *       VID-ALLOW-CORE-ROT-OFF
 *       VID-ALLOW-CORE-ROT-ON
 * 
 *   $VID-USER-ROT$   -> Video User Rotation: Rotation the core is requesting, possible replacement values, does not affect the UI:
 *       VID-USER-ROT-0
 *       VID-USER-ROT-90
 *       VID-USER-ROT-180
 *       VID-USER-ROT-270
 * 
 *   $VID-FINAL-ROT$   -> Video Final Rotation: Rotation which is the sum of the user rotation and the core rotation if it has been allowed, does not affect the UI:
 *       VID-FINAL-ROT-0
 *       VID-FINAL-ROT-90
 *       VID-FINAL-ROT-180
 *       VID-FINAL-ROT-270
 * 
 *   $SCREEN-ORIENT$   -> Screen Orientation: User adjusted screen orientation, will change windows from landscape to portrait, including the Retroarch UI:
 *       SCREEN-ORIENT-0
 *       SCREEN-ORIENT-90
 *       SCREEN-ORIENT-180
 *       SCREEN-ORIENT-270
 * 
 *   $VIEW-ASPECT-ORIENT$   -> Viewport Aspect Orientation: Orientation of the aspect ratio of the RetroArch viewport
 *       VIEW-ASPECT-ORIENT-HORZ
 *       VIEW-ASPECT-ORIENT-VERT
 * 
 *   $CORE-ASPECT-ORIENT$   -> Core Aspect Orientation: Orientation of the aspect ratio requested by the core
 *       CORE-ASPECT-ORIENT-HORZ
 *       CORE-ASPECT-ORIENT-VERT
 * 
 *   $PRESET_DIR$  -> Preset directory's name
 * 
 *   $PRESET$     -> Preset's name
 * 
 * If no wildcards are found within the path, or the path 
 * after replacing the wildcards does not exist on disk,
 * the path returned will be unaffected.
2023-02-26 19:06:57 +01:00
LibretroAdmin a2f34a6836 Update shader_glsl.c 2023-02-26 19:03:05 +01:00
Nicolas Adenis-Lamarre 7e2e87ad4a fix udev guns input when id_mouse is not id_joystick (#15026)
the commit cfe9d60f51
introduces an issues on guns inputs for drivers udev, dinput, winraw and x11.
A local variable called "port" is redefining the function argument variable and
is causing bad calls in subsequent function calls.

In short, functionnally, if you have only 1 gun and 1 pad on your system, all works.
As soon as you use several pads or several guns, you may have issues,
because subsequent calls use the joystick port instead of the device port as argument.

IMPORTANT NOTE : this fix was done originally for the batocera project which uses only the udev driver,
this is why it is focused on udev only.
The same thing must be done and tested for dinput, winraw and x11.
I've not the ability to test them.

Signed-off-by: Nicolas Adenis-Lamarre <[email protected]>
2023-02-26 15:52:20 +01:00
libretroadmin 3f485de88c i(dinput/winraw/x11) Fix issue pointed out in PR #15026 2023-02-26 15:51:37 +01:00
sonninnos 6622cbb69d (D3D11/12) Cleanups (#15025) 2023-02-26 13:27:05 +01:00
github-actions e34168e44c Fetch translations from Crowdin 2023-02-26 00:12:35 +00:00
libretroadmin 1314d9479b (Griffin) Add HAVE_MIST files
(Command.c) Remove some unused variables
2023-02-25 17:51:16 +01:00
LibretroAdmin 9192abb608 Revert "steam support for mac (#15018)" (#15022)
This reverts commit 3fa1e32bc6.
2023-02-25 17:26:34 +01:00
LibretroAdmin ceaef8240d Revert "Probable build fix for xcode 12 (#15020)" (#15021)
This reverts commit 43e6877e5d.
2023-02-25 17:25:43 +01:00
warmenhoven 43e6877e5d Probable build fix for xcode 12 (#15020) 2023-02-25 16:41:30 +01:00
warmenhoven 3fa1e32bc6 steam support for mac (#15018) 2023-02-25 09:21:15 +01:00
github-actions 823be06452 Fetch translations from Crowdin 2023-02-25 00:12:12 +00:00
libretroadmin f8b119031d Buildfix 2023-02-24 23:16:30 +01:00
libretroadmin 9f4439958b Turn function static 2023-02-24 23:08:44 +01:00
Joe OsbornandJoseph C. Osborn d0ca2384c5 Add LOAD_STATE_SLOT N command to stdin/network protocol (#15010)
* Add LOAD_STATE_SLOT N command to stdin/network protocol

* Style fixes

---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-02-24 23:04:39 +01:00
Joe OsbornandJoseph C. Osborn e1afca5392 add command and stdin_cmd features to emscripten RA. update libretro.js to show how commands could be sent over emscripten stdin. (#15017)
Co-authored-by: Joseph C. Osborn <[email protected]>
2023-02-24 22:06:04 +01:00
libretroadmin d4677790eb Hopefully fixes Dingux issues with ScummVM 2023-02-24 19:13:30 +01:00
github-actions 431092fc57 Fetch translations from Crowdin 2023-02-24 00:12:11 +00:00
libretroadmin 3adcbea501 Silence some implicit conversion warnings 2023-02-23 21:59:02 +01:00
libretroadmin 4811568c78 Silence -Wunused-const-variable warnings 2023-02-23 21:49:46 +01:00
libretroadmin 51d238875e Get rid of obsolete HAVE_VIDEO_LAYOUT - obsolete spec, was only
ever implemented for OpenGL2 driver, lots of code debt, best to
instead just keep improving the overlay system instead which is
already available for most video drivers
2023-02-23 21:03:41 +01:00
libretroadmin c7f2e6e163 Buildfix 2023-02-23 19:06:55 +01:00
libretroadmin 8507c4ba20 (input/connect) Cleanups 2023-02-23 18:53:17 +01:00
libretroadmin 3cad8ac834 (Apple/Makefile/Qb) HAVE_METAL being defined does not bake out OpenGL,
bake out Switchres (Linux/windows only)
2023-02-23 17:53:03 +01:00
libretroadmin 5e05f76e78 Some buildfixes for compiling macOS with plain make 2023-02-23 17:44:23 +01:00
libretroadmin 27ad653dbd Fixed another CXX_BUILD error 2023-02-23 17:11:26 +01:00
libretroadmin 4fa19e552a CXX_BUILD buildfixes 2023-02-23 17:09:45 +01:00
libretroadmin 32962dfc99 Fix function declaration movie_stop_playback 2023-02-23 17:05:31 +01:00
libretroadmin 581b9e0b0d (RSX) Updates to video driver 2023-02-23 16:11:01 +01:00
libretroadmin 1d35e1a460 (PS3) Fix typedefs 2023-02-23 15:25:23 +01:00
libretroadmin 8c47aa41bd (Mac/iOS/tvOS) Add HAVE_BSV_MOVIE 2023-02-23 15:16:31 +01:00
libretroadmin 7ed1d0760a Revert "(Vulkan) Ignore Fast-Forward Frameskip option (#15011)"
This reverts commit 00c0eda046.
2023-02-23 13:44:17 +01:00
libretroadmin f07fd91a88 (Apple) Buildfix 2023-02-23 13:24:25 +01:00
libretroadmin 0f8f871581 (PS3) Update code to use flags 2023-02-23 13:22:28 +01:00
libretroadmin e447443e86 (PS3) Define KbData 2023-02-23 13:20:56 +01:00
libretroadmin 7ebab640d7 Cleanups/style nits 2023-02-23 13:15:14 +01:00
libretroadmin 3f3262fba3 (PS3) Cleanups - don't assume GLSL is the default shader for PSL1GHT 2023-02-23 10:43:33 +01:00
github-actions a4ff8f9320 Fetch translations from Crowdin 2023-02-23 00:12:34 +00:00
libretroadmin 57828bf246 Turn some of the logging into _DBG 2023-02-23 00:42:34 +01:00
LibretroAdmin 491c495249 Unify ps3 (#15014)
* Unify PS3 input driver

* Fix builds

* Add missing variable

* (PS3/Keyboard) Add more missing defines
2023-02-23 00:35:46 +01:00
libretroadmin a77802fec4 Update libretro-common 2023-02-22 23:31:42 +01:00
sonninnos 00c0eda046 (Vulkan) Ignore Fast-Forward Frameskip option (#15011) 2023-02-22 19:43:06 +01:00
sonninnos dfef7a5ba3 Don't take rewind steps while menu pause active (#15009) 2023-02-22 19:02:36 +01:00
libretroadmin d55d1a8863 Fix typo 2023-02-22 14:54:53 +01:00
OsirizX c0ccb8cda3 (PSL1GHT) Code cleanup (#15006)
* (PSL1GHT) Use RSX_SHADER_STOCK_BLEND and RSX_SHADER_MENU defines

* (PSL1GHT) Cleanup compiler warnings

* (PSL1GHT) Make sure we compile with librt
2023-02-22 08:14:38 +01:00
github-actions bc1aaef826 Fetch translations from Crowdin 2023-02-22 00:12:01 +00:00
LibretroAdmin c810520a55 Revert "(Vulkan) Add adaptive vsync support (#14788)" (#15004)
This reverts commit 4543a52be6.
2023-02-21 23:00:06 +01:00
sonninnos 4543a52be6 (Vulkan) Add adaptive vsync support (#14788)
* (Vulkan) Add adaptive vsync support

* (Vulkan) Mailbox presentation case
2023-02-21 22:42:32 +01:00
libretroadmin 22992d7f95 Add function prototype to egl_common.h 2023-02-21 22:26:52 +01:00
libretroadmin aa9f53659f (EGL) Remove egl_has_config 2023-02-21 22:16:04 +01:00
libretroadmin b442d6c9f8 (Vulkan) Small cleanups 2023-02-21 21:19:27 +01:00
libretroadmin cc85d7fd6d (EGL) Cleanups
(GLSL) Buildfix
2023-02-21 21:09:47 +01:00
barbudreadmon d47bbe5cc1 (GLSL) send rotation index to shader (#12827) 2023-02-21 20:53:01 +01:00
warmenhoven 9c2f908d44 Fix initial blurriness on Metal (#15002)
This reverts #14963 and part of #14942. Instead of forcing a size
change on mac the way we do on tvos, bring back the old way of making
two setContentSize calls.
2023-02-21 20:09:21 +01:00
libretroadmin 51894c3cbb (Config file/libretro-common) config_file_extract_value - don't make
it dependent on strldup which pulls in another dependency/source file -
instead just unroll strldup for this specific one-time instance
2023-02-21 16:37:30 +01:00
libretroadmin 8e0e5096d2 Get rid of now unused extern 2023-02-21 15:12:23 +01:00
libretroadmin 9c2faafb6e (RSX/PSL1GHT) combine both video driver context files into one 2023-02-21 15:02:23 +01:00
libretroadmin 2dab525011 (PSL1GHT) Use HAVE_GCM as a define for compiling in the libgcm video
driver
2023-02-21 14:24:00 +01:00
libretroadmin 1f0a5f9615 (libretro-common) retro_endianness.h - Get rid of warning: #warning Defining MSB_FIRST and LSB_FIRST in compile options is deprecated [-Wcpp]
#  warning Defining MSB_FIRST and LSB_FIRST in compile options is deprecated
    ^~~~~~~
2023-02-21 13:35:04 +01:00
libretroadmin 8eff57f4d6 (task_movie) Cleanups/style nits 2023-02-21 11:10:25 +01:00
libretroadmin 1440196fa0 (GX/GEKKO/RTHREADS) scond_wait_timeout - correct Gekko codepath 2023-02-21 11:00:17 +01:00
libretroadmin 8590dd6425 (GX/Gekko) Implement scond_wait_timeout - now.tv_sec / now.tv_nsec were
previously uninitialized when being touched
2023-02-21 10:28:23 +01:00
libretroadmin f96ff71416 (video context drivers) Cleanups 2023-02-21 09:49:46 +01:00
serakeri e0c9781b50 (MFi) Prevent crash when controller player index is unset (-1) (#14999) 2023-02-21 06:10:00 +01:00
serakeri 347ea8157c Various memory access fixes to prevent crashes (#14459) (#15000)
Prevent double free and null dereference when the controller is quickly reconnected.
Handle error when controller device query returns null instead of crashing.
2023-02-21 06:09:36 +01:00
github-actions 24dc83cbda Fetch translations from Crowdin 2023-02-21 00:12:19 +00:00
libretroadmin 48e551a2e6 (libretro-common/PSL1GHT) Don't redefine defines 2023-02-20 19:32:59 +01:00
libretroadmin 258c161d84 (libretro-common/vfs_implementation) Don't rely on ps3_defines.h which pulls in a ton of other header files
which might not be available for a given core
2023-02-20 19:26:54 +01:00
libretroadmin cdade2860f (PSL1GHT/RSX) Buildfix 2023-02-20 18:45:54 +01:00
libretroadmin f8db0b86a9 (RSX) Style nits 2023-02-20 18:32:40 +01:00
libretroadmin 35fa25bed6 (PS3) Start turning PS3 input drivers more the same 2023-02-20 18:09:57 +01:00
libretroadmin 22c760af41 Silence warning: missing braces around initializer [-Wmissing-braces] 2023-02-20 17:15:25 +01:00
libretroadmin 947de1218a (RSX) Set RSX_MAX_SHADERS back to 2 - makes no difference to the array
bound warnings
2023-02-20 17:11:05 +01:00
libretroadmin 761b87a61b (MFi) Get rid of warning 2023-02-20 16:54:50 +01:00
libretroadmin 03096cbda7 (MFi) Get rid of warning 2023-02-20 16:51:15 +01:00
libretroadmin 33ba9777a0 (MFi) Fix typo 2023-02-20 16:47:42 +01:00
libretroadmin a6c19b083a (MFi) Should fix MFi input issue - also took the time to refactor some code 2023-02-20 16:46:04 +01:00
libretroadmin a858101b80 (RSX/PSL1GHT) Buildfix 2023-02-20 16:31:46 +01:00
libretroadmin ed8b378b62 (GL1) Fix signed/unsigned mismatch warnings 2023-02-20 16:29:49 +01:00
libretroadmin 2ee501809e (PSL1GHT) turn public functions static 2023-02-20 16:24:32 +01:00
libretroadmin 4620b55476 (RSX/PSL1GHT) Cleanups and getting rid of warnings - array bounds exceeding
was troublesome so bumped up max shaders to 10 for now, some style nits in
RSX video driver, variable center_y could be uninitialized so fixed that
in psl1ght_input.c
2023-02-20 16:13:23 +01:00
libretroadmin 07c073b717 (PSL1GHT) Don't redefine MAX_MICE define 2023-02-20 15:35:00 +01:00
libretroadmin a4dda41739 (PSL1GHT) Buildfixes/warning fixes 2023-02-20 15:33:54 +01:00
libretroadmin fed60c62b6 (PSL1GHT) Newer PSL1GHT versions since Mar 3, 2021 have renamed SetZControl
to SetZMinMaxControl
2023-02-20 14:58:09 +01:00
libretroadmin 851177bf20 (libretro-common) Buildfix 2023-02-20 14:52:00 +01:00
libretroadmin b872de4fb1 (PSL1GHT) Fix some warnings 2023-02-20 14:50:54 +01:00
libretroadmin 22cdfaf95a (libretro-common) Backport reverb.c changes 2023-02-20 14:40:10 +01:00
libretroadmin a6bb8679c9 (memmap.c) Silence implicit declaration of function 'free' for PSL1GHT 2023-02-20 14:29:40 +01:00
libretroadmin c8f4bdb36d Remove obsolete paths 2023-02-20 14:26:37 +01:00
libretroadmin 25c027074e Add freetype2 include directory 2023-02-20 14:21:57 +01:00
libretroadmin 7b413b667e (RSX) Silence some warnings 2023-02-20 14:18:40 +01:00
libretroadmin 2d2d96660a Cleanups 2023-02-20 13:21:17 +01:00
libretroadmin 23b8f3d97d (UWP) Simplify UWP code - there was pre-Windows 2000 ifdefs in here 2023-02-20 13:00:06 +01:00
libretroadmin 66aebcabea (input drivers) Cleanups 2023-02-20 12:54:26 +01:00
libretroadmin 334cb3d5d4 (joypad drivers) Cleanups 2023-02-20 10:46:28 +01:00
libretroadmin 52a800a520 (Wayland input) Cleanups 2023-02-20 10:26:14 +01:00
libretroadmin 93de4f3c4f (Joypad drivers) Cleanup dos_joypad.c 2023-02-20 10:18:48 +01:00
libretroadmin 6f26f37cec Simplify axis state code for joypad drivers 2023-02-20 10:10:07 +01:00
github-actions 1e9501c672 Fetch translations from Crowdin 2023-02-20 00:13:19 +00:00
libretroadmin 5ae2b9f753 (UWP) Cleanups/style nits
(Joypad drivers) Cleanup/slim down axis code
2023-02-19 19:32:05 +01:00
libretroadmin 8b200f552d Simplify axis state code of other input joypad drivers 2023-02-19 19:05:32 +01:00
libretroadmin e367f87767 Simplifications to axis_state functions for some driver joypad files 2023-02-19 18:42:40 +01:00
crystalct 0fe92cc954 PSL1GHT fix http download (#14994) 2023-02-19 18:07:01 +01:00
crystalct 58282ee98a PSL1GHT build fix and folders nromalization (#14993) 2023-02-19 16:13:25 +01:00
sonninnos 671bd9be6a Allow manual video swap interval forcing (#14991) 2023-02-19 14:21:18 +01:00
libretroadmin 5abbf0778f (vulkan_common) vulkan_create_swapchain - try to silence vulkan warnings 2023-02-19 13:54:17 +01:00
libretroadmin da51b441f4 (wiiu_hid) More buildfixes 2023-02-19 13:20:09 +01:00
libretroadmin 94745eaf31 (WiiU) wiiu_hid - buildfixes 2023-02-19 13:01:11 +01:00
libretroadmin e1521dd86d (X11 input) Silence warning 2023-02-19 12:44:04 +01:00
libretroadmin 42a0618812 (udev_joypad.c) Cleanups 2023-02-19 12:42:06 +01:00
libretroadmin 96d39a78cc (Wayland) Silence implicit declaration warnings 2023-02-19 12:29:07 +01:00
libretroadmin 72ff8808af Silence MSVC warning 2023-02-19 12:21:14 +01:00
reallibretroadmin 78e935b7a9 (IOHIDManager) Buildfix 2023-02-19 12:20:11 +01:00
libretroadmin 6728d5a2fa (Subsystem) Cleanups 2023-02-19 12:15:45 +01:00
reallibretroadmin 0c1c345541 (Apple) Silence some warnings 2023-02-19 10:24:30 +01:00
libretroadmin 1d9cb216ca Silence some warnings/LTO issues 2023-02-19 10:21:37 +01:00
libretroadmin 4d305bf3e8 Buildfixes for Android and Wayland 2023-02-19 10:09:50 +01:00
libretroadmin 963bb92f95 (Input) Style nits/code simplifications 2023-02-19 06:30:14 +01:00
libretroadmin 6b21ad6f53 (libretro-db) Simplifications/cleanups 2023-02-19 05:27:43 +01:00
libretroadmin 66ad277dc1 (libretro-db) Simplifications 2023-02-19 05:18:41 +01:00
libretroadmin e65f273065 (libretro-db) Style/code nits 2023-02-19 04:54:47 +01:00
github-actions 65b0098cc1 Fetch translations from Crowdin 2023-02-19 00:12:51 +00:00
libretroadmin 91b7445bda (libretro-db) Cleanups 2023-02-18 18:13:52 +01:00
libretroadmin 2d48cbaec6 (libretro-db) Cleanups/style nits 2023-02-18 18:04:55 +01:00
reallibretroadmin dc35763677 (Mac) Silence warnings 2023-02-18 17:15:52 +01:00
libretroadmin 6624126885 (MSVC) silence warnings 2023-02-18 17:04:23 +01:00
OsirizX 217656454c [PSL1GHT] Fix video rotation (#14990) 2023-02-18 10:44:58 +01:00
github-actions 06fd3b778d Fetch translations from Crowdin 2023-02-18 00:12:06 +00:00
sonninnos 8b1881fe83 Restore cached video driver always on quit (#14988) 2023-02-18 01:09:05 +01:00
sonninnos d7f2bd6ce7 Network information cleanup (#14987) 2023-02-17 20:19:58 +01:00
libretroadmin b04a926170 (libretro-db) Further cleanups 2023-02-17 17:49:36 +01:00
libretroadmin 1dcf3b328a (libretro-db) Cleanups 2023-02-17 16:43:00 +01:00
github-actions 7a2c6e9e52 Fetch translations from Crowdin 2023-02-17 00:12:42 +00:00
sonninnos ee2b6997f1 (XMB) Layout corrections (#14986) 2023-02-16 16:08:57 +01:00
github-actions 7f24232b59 Fetch translations from Crowdin 2023-02-16 00:12:01 +00:00
warmenhoven c242586ea7 tvOS improvements (#14983)
The initial popup screen advertising the web server did not prevent
keys from passing through, so interactions with the alert would also
be handled by the menu. The alert would pop up any time there was a
network reconfiguration; now it only pops up once per run. Added a way
to turn off the webserver advertisement alert permanently.

Also fixed a bug around filtering the Siri remote out, and turning
controllers off while the app is running.
2023-02-15 11:59:06 +01:00
github-actions 5e7b48113e Fetch translations from Crowdin 2023-02-15 00:13:00 +00:00
zoltanvb f56cbd847d LED driver for Linux /sys/class/leds (#14981)
New driver for controlling system LEDs offered via /sys/class/leds.
Currently it handles led0, led1 etc. type of entries, which are
present on e.g. Raspberry Pi's.
2023-02-14 23:00:35 +01:00
warmenhoven c52d3484eb Fix turning off rumbling (#14979) 2023-02-14 20:37:16 +01:00
sonninnos 54b28f941d (XMB+Ozone) Thumbnail behavior adjustments (#14980) 2023-02-14 20:35:56 +01:00
warmenhoven c3526132ad iOS9/iOS11 build fix: Link against CoreHaptics (#14977)
Also address a couple warnings
2023-02-14 05:35:38 +01:00
reallibretroadmin 6fc57765c3 Silence warning 2023-02-14 02:09:04 +01:00
github-actions 23c84d3031 Fetch translations from Crowdin 2023-02-14 00:12:32 +00:00
warmenhoven 1036126c9c A couple minor OSX Metal/Vulkan performance improvements, maybe (#14976)
I think most of these were already the default so it doesn't help as
much as I was hoping, but I think it does speed up shader compilation
slightly.
2023-02-13 21:51:01 +01:00
warmenhoven 5685b5a9a1 mFI on OSX (#14975)
This adds mFI as a controller driver for OSX, as well as adding rumble
support for mFI controllers. Also add support for the Home button.

Also fixed a couple warnings.
2023-02-13 21:49:35 +01:00
sonninnos df05efe068 User Interface menu reordering (#14974) 2023-02-13 20:34:59 +01:00
sonninnos 7765319417 (RGUI) Fix disabled menu item color (#14973) 2023-02-13 16:41:23 +01:00
sonninnos 1b6a560816 Don't save switched video driver on quit (#14972) 2023-02-13 11:28:53 +01:00
github-actions 0b6a1b530d Fetch translations from Crowdin 2023-02-13 00:12:19 +00:00
gouchi df5f8df7ea Enable RETRO_ENVIRONMENT_SET_SUPPORT_NO_GAME for libretro-video-processor (#14969) 2023-02-12 18:10:29 +01:00
Hans-Kristian Arntzen 89d2d66e98 [Vulkan] Fix regression with RGB565 and OriginalHistory. (#14968)
Need to let filter chain know that we remapped the format.
Otherwise we end up trying to copy RGBA8888 to RGB565.
2023-02-12 18:10:07 +01:00
github-actions 139f27c8a1 Fetch translations from Crowdin 2023-02-12 00:13:04 +00:00
libretroadmin e8152870f6 (PSP) Buildfix 2023-02-11 09:12:42 +01:00
zoltanvb 1ec036fb91 Music files should also obey builtin_mediaplayer_enable (#14967)
Disabling the built in media player should be possible for music files
as well. Without this, sound files can not be opened from file browser
with cores that support them.
2023-02-11 00:47:03 +01:00
libretroadmin 6461928ed4 Fix KERNEL PRX path 2023-02-11 00:45:03 +01:00
libretroadmin 35860b4d47 Typo fix 2023-02-10 19:23:14 +01:00
libretroadmin 824c1dea8c Fix header include 2023-02-10 19:19:32 +01:00
libretroadmin d5dc405ac1 (GL3) Buildfix for GL_DEBUG 2023-02-10 09:21:35 +01:00
OsirizX 0549223677 (PSL1GHT) Add improvements to the RSX driver (#14965)
* remove var error in psl1ght input

* (psl1ght) add modern_alpha_blend and modern_opaque rsx shaders

* (psl1ght) add perf improvements to the rsx driver

* add rsx gfx for psl1ght

* (psl1ght) set rsx as a compatible video driver

* Do xmb menu scaling for psl1ght

* (psl1ght) update Makefile to use latest shaders and more UI menu options
2023-02-10 08:29:45 +01:00
warmenhoven 9195de67c0 Fix metal driver for osx. This is safe to do everywhere. (#14963) 2023-02-10 06:29:23 +01:00
github-actions b9e1e5d132 Fetch translations from Crowdin 2023-02-10 00:12:43 +00:00
github-actions 35bc011197 Fetch translations from Crowdin 2023-02-09 00:12:25 +00:00
github-actions e1eb0af45a Fetch translations from Crowdin 2023-02-08 00:11:48 +00:00
Francisco Javier Trujillo Mata 3d9c60be7c Avoid loading extra drivers (#14959) 2023-02-07 22:11:42 +01:00
github-actions 3a540f687c Fetch translations from Crowdin 2023-02-07 00:12:37 +00:00
reallibretroadmin c92213bc9d Silence warning about unused variables 2023-02-06 02:46:00 +01:00
github-actions d2608b7023 Fetch translations from Crowdin 2023-02-06 00:12:11 +00:00
Hans-Kristian Arntzen a77ada403e [Vulkan] Use compute shaders to upload RGB565. (#14953)
A compatible path that is still fast. No reason to bother checking for
compat here really.
2023-02-05 19:23:48 +01:00
libretroadmin 568ffac8f6 (msg_hash) remove no longer necessary msg_hash files and move them into msg_hash.c 2023-02-05 03:28:48 +01:00
github-actions 5a11249a57 Fetch translations from Crowdin 2023-02-05 00:13:04 +00:00
zoltanvb 1134b895a2 Ozone footer enhancement: Scan button (#14949)
Display Scan button in footer when it is applicable.
2023-02-04 17:18:21 +01:00
Hans-Kristian Arntzen 9f7d0c74d5 [Vulkan] Define and implement v2 of context negotiation interface (#14890)
* [Vulkan] Add v2 of context negotiation interface.

* [Vulkan] Add vkEnumerateInstanceVersion symbol.

* [Vulkan] Implement v2 context negotiation

* [libretro] Add GET_HW_CONTEXT_NEGOTIATION_INTERFACE_SUPPORT.

Works around issues in v1 interface where it was not possible to
query what frontend would do when faces with newer interface versions.

This env-call gives stronger guarantees how things have to work.

* [runloop] Implement GET_HW_CONTEXT_NEGOATION_INTERFACE_SUPPORT.

Fairly trivial. Just report the latest version.

* [Vulkan] Add stricted wording around get_application_info in v2.

* [Vulkan] Be more defensive about get_application_info() in v1.
2023-02-04 16:51:50 +01:00
zoltanvb 39e5dde973 Add Clear button to Ozone footer (#14947)
Add indication of Clear button when it is applicable (currently: keybinds).
2023-02-04 14:25:59 +01:00
zoltanvb bda8c6a2ba Remove msg_hash_get_help_cht_enum as Crowdin translation is now above 95%. (#14948) 2023-02-04 14:25:30 +01:00
github-actions 12fb608c54 Fetch translations from Crowdin 2023-02-04 00:11:25 +00:00
Barry Rowe 78326188c4 Fix nvda switching to powershell on speak. (#14944) 2023-02-03 08:40:53 +01:00
warmenhoven 338430d1ec Fix tvos metal driver (#14943)
The drawableSizeWillChange notification was never coming, so the
viewport size was never getting set properly.
2023-02-03 07:32:44 +01:00
warmenhoven ac2cceb905 Fix a few mac windowed mode settings (#14942)
* Use "Remember window position and size" setting (fixes #14806)
* Implement window opacity
* Enable "Show window decorations" toggle
* Hide "Disable composition" option (osx does not support disabling composition)
2023-02-03 07:32:30 +01:00
LibretroAdmin 02f0a829ed Revert "Add support for system subdirs per core/database (#14885)" (#14941)
This reverts commit c3fe980a1d.
2023-02-03 04:04:44 +01:00
LibretroAdmin e7fe79e8ed Revert "Ignore system subdir replacement if subdir has subdirs (#14887)" (#14940)
This reverts commit f46550bd7c.
2023-02-03 04:04:14 +01:00
github-actions 3b5f774d39 Fetch translations from Crowdin 2023-02-03 00:11:31 +00:00
Joe OsbornandJoseph C. Osborn 23976e9b44 Fix bsv playback from a starting state for dosbox (#14939)
This relaxes a warning about save state sizes for cores like
dosbox-pure that don't report accurate save state sizes.

Before, the warning would be issued and the state would not be loaded;
now, the warning is issued and the state is loaded anyway.

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-02-02 20:44:30 +01:00
zoltanvb f2ee255698 Ozone footer enhancements (#14934)
Add Help button (Select) and Reset to Default (Start) to footer where applicable.
Display Help footer only if there is actual info to be displayed, either
actual help, or sublabel if it is not visible otherwise.
2023-02-02 01:47:02 +01:00
github-actions 0f5d8def27 Fetch translations from Crowdin 2023-02-02 00:11:41 +00:00
github-actions 66507d86a7 Fetch translations from Crowdin 2023-02-01 00:13:11 +00:00
Joe OsbornandJoseph C. Osborn 155e99b92c add keyboard recording support to bsv (#14933)
* add keyboard recording support to bsv

BSV movies recorded in older RA *WILL NOT* replay properly after this
patch.  While looking to see if the core actually uses a keyboard
device could mitigate this, it is an unavoidable consequence of using
BSV, a format which carries no metadata whatsoever.

* Fix for loop declarations and some whitespace

---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-02-01 00:22:00 +01:00
libretroadmin c27e73e736 (Apple/MoltenVK/Vulkan) Default to Vulkan driver when available 2023-01-31 18:20:59 +01:00
Joe OsbornandJoseph C. Osborn 5dbdde4316 BSV ergonomics improvements (#14929)
* BSV ergonomics improvements

- Date stamp toggled recordings instead of overwriting or using save
slot number
- Properly stop movie on playback EOF; also pause emulation
- Add recording flag to match playback flag in bsv state enum
- Rename bsv "movie path" to "movie auto path" to clarify role
- Allow stopping movie playback before EOF using record toggle hotkey
---------

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-01-31 05:34:26 +01:00
sonninnos 456434928b Use non-rendering pause mode when frameadvance is triggered (#14931) 2023-01-31 04:27:37 +01:00
github-actions 8f12f96844 Fetch translations from Crowdin 2023-01-31 00:12:46 +00:00
github-actions 5a7ac3d06b Fetch translations from Crowdin 2023-01-30 00:11:09 +00:00
LibretroAdmin d2e3dd136c Revert "Ozone footer enhancements (#14926)" (#14927)
This reverts commit f7f700318a.
2023-01-29 23:31:22 +01:00
reallibretroadmin 27ee23cfd8 Remove unused variable 2023-01-29 23:27:30 +01:00
zoltanvb f7f700318a Ozone footer enhancements (#14926)
Add Help button (Select) and Reset to Default (Start) to footer where applicable.
2023-01-29 21:55:16 +01:00
sonninnos b1b7fb56a9 (Ozone) Refresh thumbnail on close content hotkey (#14924) 2023-01-29 14:52:53 +01:00
sonninnos a055bcd16b Do not block input overlay hotkeys (#14923) 2023-01-29 14:52:03 +01:00
warmenhoven 2946e6704b Fix a crash in for BT HID devices. (#14922)
pad_connection_destroy() frees slots, no need to free it again.
2023-01-29 14:51:36 +01:00
warmenhoven e5ba7b9d2f Fix #14778 - In addition to sending logs to asl_client, add them to the logfile. (#14921) 2023-01-29 06:02:28 +01:00
github-actions 18ef01b0d5 Fetch translations from Crowdin 2023-01-29 00:12:07 +00:00
sonninnos 6378d8e0f8 Override config + appendconfig fixes (#14920) 2023-01-29 00:12:08 +01:00
zoltanvb 74d0123b9f Help for turbo modes (#14919)
Help text added for each of the selectable turbo modes.
2023-01-28 18:29:34 +01:00
warmenhoven 8edbf51323 Fix warnings (#14918) 2023-01-28 17:29:53 +01:00
libretroadmin 7583e3d903 (Vulkan) Some refinements 2023-01-28 16:51:17 +01:00
warmenhoven af2587b62b Fix rgui on vulkan on platforms that don't have _pack16 VkFormats (#14916) 2023-01-28 16:47:11 +01:00
sonninnos 482c8ccf35 Add dropdown menu for audio device (#14914) 2023-01-28 02:22:08 +01:00
github-actions 88f30174ce Fetch translations from Crowdin 2023-01-28 00:11:19 +00:00
Jamiras 5ecdc4c170 upgrade to rcheevos 10.6 (#14911) 2023-01-27 14:52:29 +01:00
warmenhoven 46cf1d795a Vulkan on tvOS (#14912)
* Clean up tvos defines, make debug the same as release

* Compile tvOS against libMoltenVK.dylib and enable vulkan driver

* Make sure HAVE_UPDATE_CORE_INFO is set for tvos
2023-01-27 14:52:13 +01:00
github-actions b9f879b6ba Fetch translations from Crowdin 2023-01-27 00:11:57 +00:00
warmenhoven 1bd3e32ad7 RetroArch_iOS13_Metal.xcodeproj updates (#14910)
* No changes here, just alphabetizing the defines

* No need to define cflags for arch=*

* Bring debug and release more in line with each other

* Make sure to define HAVE_UPDATE_CORE_INFO
2023-01-26 23:36:51 +01:00
yoshisuga 22c39e7b92 Support for vulkan driver (#14908) 2023-01-26 20:26:10 +01:00
warmenhoven 10ace666e1 On iOS, pause while in background (#14907) 2023-01-26 20:10:01 +01:00
Tatsuya79 940ad64d41 Allow bypassing savestate info files filtering (#14906) 2023-01-26 15:56:33 +01:00
Joe OsbornandJoseph C. Osborn 951f5a76a5 Add bsv to emscripten builds (#14905)
* Add bsv to emscripten builds

BSV has no external dependencies so this addition should be fine.

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-01-26 05:46:39 +01:00
github-actions 97c8aa2a63 Fetch translations from Crowdin 2023-01-26 00:11:58 +00:00
Jamiras 0ec1a6acfd call ssl_socket_close for ssl sockets (#14903) 2023-01-25 16:17:41 +01:00
warmenhoven 4d5bea1208 Vulkan video driver on iOS (#14902) 2023-01-25 16:17:01 +01:00
sonninnos 13ceea0dfe Decouple config CLI append and config overrides (#14901) 2023-01-25 07:15:42 +01:00
Joe OsbornandJoseph C. Osborn f149519351 Allow for both -e and -R to start a BSV file recording at a state (#14898)
* Allow for both -e and -R to start a BSV file recording at a state

The key issue is that loading a state takes some time, and the BSV
recording shouldn't start until that's done.

The minimal patch for this would just be a change to runloop.c which
moves movie initialization after entry state loading, throwing in a
task_queue_wait().  This makes for some awkward repeated autoload OSD
messages and doesn't solve the underlying issue.

Most of this change puts BSV recording start/stop into tasks, like
saving and loading are tasks; this was important to centralize BSV
operations a bit more and is the first part of a refactoring towards
more robust input recording.  The necessary wait is introduced in the
begin-recording callback.

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-01-25 07:15:32 +01:00
retroNUC afe3bf72bb net_http - 3ds build fix (#14900) 2023-01-25 07:15:17 +01:00
github-actions 960204b5eb Fetch translations from Crowdin 2023-01-25 00:11:53 +00:00
retroNUC 4ad9c7e020 net_http - Temp fix for cheevos crash (#14742) (#14899)
* net_http - Temp fix for cheevos crash (#14742)

Don't use new timeout/poll code for cheevos http requests

* net_http - Typo fix in comment
2023-01-24 23:36:17 +01:00
libretroadmin b5244cbfe7 Turn ctr_set_scale_vector into a macro 2023-01-24 23:35:37 +01:00
libretroadmin e30793b06f (CTR) Remove ctr_set_scale_vector until we actually have a need for it 2023-01-24 23:04:07 +01:00
libretroadmin fdc47dcdae Remove redundant headers 2023-01-24 22:59:15 +01:00
libretroadmin e272edc8c0 (SDL2) Cleanups 2023-01-24 21:54:06 +01:00
libretroadmin 4c3fefa2be (GL3) Use flags instead of booleans 2023-01-24 21:35:27 +01:00
libretroadmin 582ed9e9e8 (GL1) Use flags instead of boolean variables 2023-01-24 20:33:41 +01:00
libretroadmin 087e3ec974 (GL1) Inline gl1_bind_texture 2023-01-24 18:55:16 +01:00
libretroadmin 19705a3453 (D3D12) Get rid of some wrapper functions 2023-01-24 18:33:52 +01:00
reallibretroadmin 64bee66ba9 Remove unused variable 2023-01-24 04:52:31 +01:00
libretroadmin 1a93bb3844 (Vulkan) Move some code around 2023-01-24 04:40:17 +01:00
libretroadmin bb48289dd4 (GL3) Move functions over to shader_gl3.cpp and make them static 2023-01-24 04:24:22 +01:00
libretroadmin 6b184a1857 (D3D10) Cleanups - get rid of some inline functions 2023-01-24 03:36:18 +01:00
libretroadmin 980196b24d Header include cleanups 2023-01-24 02:30:58 +01:00
sonninnos c6dc92fc07 Override bind save + menu manager overhaul (#14895)
* Input bind override conf saving

* Override menu overhaul
2023-01-24 01:42:50 +01:00
libretroadmin 9a0ecaab4b Remove some unused variables 2023-01-24 01:18:59 +01:00
github-actions ac5d6ade25 Fetch translations from Crowdin 2023-01-24 00:11:28 +00:00
warmenhoven 5b4c2c3e12 avoid using _PACK16 pixel formats on platforms without them (#14863) 2023-01-23 21:00:22 +01:00
libretroadmin 571e7cbd67 (GL2) Convert bools to flags 2023-01-23 18:22:13 +01:00
neil4 a734e66f72 Preemptive Frames: Call retro_run before retro_serialize (#14893)
Fixes preemptive frames not starting up with a few cores
2023-01-23 14:52:51 +01:00
github-actions b484ddfe4e Fetch translations from Crowdin 2023-01-23 00:11:47 +00:00
libretroadmin 61c986ddfa Buildfix 2023-01-22 21:44:39 +01:00
libretroadmin e798f99fea Several RARCH_CTL switches don't belong to retroarch state but
runloop state, hence remove
2023-01-22 20:16:14 +01:00
libretroadmin b23eaba217 Try to use strlcpy/strlcat instead of snprintf when possible 2023-01-22 18:57:17 +01:00
libretroadmin 5a16f91365 Prefer strlcpy over snprintf when possible - cleanup some Lakka code 2023-01-22 18:39:06 +01:00
libretroadmin a8c43daef6 Addendum - no additional whitespace - already done beforehand 2023-01-22 17:35:49 +01:00
libretroadmin 610194e805 input_config_get_bind_string_hotkey - snprintf concatenation
so we don't repeat the same formatting for every switch case
statement
2023-01-22 17:34:12 +01:00
Hans-Kristian Arntzen f7a9d64d73 Fix crash when using multiple physical devices and HW core (#14889)
* [Vulkan] Detect if wrong PhysicalDevice is returned.

* [Vulkan] Actually query physical device before creating core device.
2023-01-22 17:28:59 +01:00
libretroadmin 9fbd62d7b8 Reduce dependence on strcpy_literal (just a macro for strcpy) - prefer
going through safer strlcpy
2023-01-22 17:13:38 +01:00
libretroadmin 378e90e745 retroarch.h functions should be namespaced 'retroarch_' instead
of 'rarch_'
2023-01-22 16:58:22 +01:00
libretroadmin 539c47faa3 Indenting nit 2023-01-22 16:29:03 +01:00
reallibretroadmin f869661e66 Silence warnings shown in Xcode 2023-01-22 16:20:15 +01:00
libretroadmin de717a50d3 Style nits 2023-01-22 16:12:27 +01:00
sonninnos f46550bd7c Ignore system subdir replacement if subdir has subdirs (#14887) 2023-01-22 13:03:10 +01:00
github-actions 247991e53b Fetch translations from Crowdin 2023-01-22 00:12:23 +00:00
libretroadmin 01c3684b10 Cleanups - try to remove stdio.h include where possible 2023-01-21 22:25:38 +01:00
sonninnos c3fe980a1d Add support for system subdirs per core/database (#14885) 2023-01-21 19:20:17 +01:00
libretroadmin 27b485a0f7 (intl) CLeanups 2023-01-21 18:50:00 +01:00
sonninnos becf623bf0 (XMB+Ozone) Fix search terms in title header (#14883) 2023-01-21 17:16:25 +01:00
sonninnos 1060fcc913 Show square sized widget on volume mute (#14884) 2023-01-21 17:12:58 +01:00
sonninnos 3b129e6098 State slot hotkey adjustments (#14881) 2023-01-21 13:47:55 +01:00
sonninnos 70c4fbeb93 (XMB) Fix MENU_ACTION_CANCEL when search is active (#14882) 2023-01-21 13:47:21 +01:00
sonninnos f421194974 Pause + hotkey + runloop related changes (#14879) 2023-01-21 01:17:47 +01:00
github-actions 57a2edfc3f Fetch translations from Crowdin 2023-01-21 00:11:30 +00:00
Joe OsbornandJoseph C. Osborn 17c7e8744e Don't autoload states if a BSV file is being played back or recorded (#14877)
- Moved BSV initialization before autoload code
- Don't trigger autoload code if there is bsv movie state

Open question: What's the difference between entry state and autoload
state? Should BSV recording use the entry state even if playback does
not?

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-01-21 00:15:14 +01:00
libretroadmin 3abd6f12f3 (intl) Cleanups 2023-01-20 19:31:28 +01:00
zoltanvb 3d654cbed4 Remove translations now maintained via Crowdin (#14876)
After PR libretro#14821 , the
contents of msg_hash_xx.c files are present in the normal translation
workflow. These files can and should be reduced to stub versions,
since new translations won't take effect otherwise.

One file missed from previous commit and stubbed completely.
Other files trimmed: only translated entries are kept, original English
entries and very partially translated items are removed.
2023-01-20 19:17:09 +01:00
libretroadmin 81603c0d13 Merge commit 'fbff3f5ce33c594372eb23430a61059232489ffc' 2023-01-20 19:16:12 +01:00
libretroadmin fbff3f5ce3 Squashed 'deps/SPIRV-Cross/' changes from f3a75d1d4b..eb9b273298
eb9b273298 Merge pull request #2094 from LibretroAdmin/main
5029e30f0a (spirv_glsl.cpp) Fix error: no matching function for call to 'max(uint32_t&, unsigned int)'

git-subtree-dir: deps/SPIRV-Cross
git-subtree-split: eb9b2732982b8eea3395216be825a74dd84fe4be
2023-01-20 19:16:11 +01:00
sonninnos 72f6291069 Fix salamander config save on fork for static platforms (#14875) 2023-01-20 18:51:23 +01:00
libretroadmin 16621f0a0c Remove unused variables 2023-01-20 18:33:53 +01:00
libretroadmin 5648c8eda4 (SPIRV-Cross) Some WiiU buildfixes 2023-01-20 18:28:17 +01:00
Joe OsbornandJoseph C. Osborn baa14ae213 Fix #14870 (#14871)
* Don't start video recording when BSV recording starts

* Don't double-record inputs in BSV recording

- Will this work properly with the part of input handling outside of
input_state_wrap? Who knows?

Co-authored-by: Joseph C. Osborn <[email protected]>
2023-01-20 18:20:10 +01:00
libretroadmin da29639d70 Squashed 'deps/SPIRV-Cross/' content from commit f3a75d1d4b
git-subtree-dir: deps/SPIRV-Cross
git-subtree-split: f3a75d1d4ba6b559d5c89550f800a518baad522d
2023-01-20 18:00:31 +01:00
libretroadmin 993d4ee64f Merge commit 'da29639d70cb151c5beb60d65621f65437304a6b' as 'deps/SPIRV-Cross' 2023-01-20 18:00:31 +01:00
libretroadmin ed7422e761 REmove subrepo 2023-01-20 17:56:28 +01:00
zoltanvb 4cf17c538b Remove translations now maintained via Crowdin (#14872)
After PR libretro#14821 , the
contents of msg_hash_xx.c files are present in the normal translation
workflow. These files can and should be reduced to stub versions,
since new translations won't take effect otherwise.

These languages had the original English text as help at the time of
commit, so it is safe to assume no translation content is lost.
Some content is preserved until Crowdin translation catches up.
2023-01-20 16:43:27 +01:00
github-actions 321a215c47 Fetch translations from Crowdin 2023-01-20 00:11:52 +00:00
zoltanvb d689a84581 Remove translations now maintained via Crowdin (#14869)
After PR https://github.com/libretro/RetroArch/pull/14821 , the
contents of msg_hash_xx.c files are present in the normal translation
workflow. These files can and should be reduced to stub versions,
since new translations won't take effect otherwise.

These languages have reached 100% completeness on Crowdin at the
time of commit, so it is safe to assume no translation content is
lost.
2023-01-19 11:32:10 +01:00
github-actions 655e2f1969 Fetch translations from Crowdin 2023-01-19 00:11:53 +00:00
esoptron2 ba5c29702e Update AUTHORS.h (#14865)
- Put my alias in proper alphabetical order
- Add another one of my aliases
2023-01-18 01:46:36 +01:00
github-actions 683931f28c Fetch translations from Crowdin 2023-01-18 00:11:47 +00:00
libretroadmin abbe7e2edc Fix CXX_BUILD error 2023-01-17 19:25:04 +01:00
zoltanvb 23d54bcec0 Fix warning: embedding a directive within macro arguments is not portable (#14859) 2023-01-17 08:07:15 +01:00
github-actions 3ee14d1dc7 Fetch translations from Crowdin 2023-01-17 00:11:47 +00:00
warmenhoven 769e448eac Fix non-HDR colors on OSX (#14860) 2023-01-16 23:27:54 +01:00
reallibretroadmin 1e88300395 Remove unused variables 2023-01-16 20:32:18 +01:00
zoltanvb abb8686010 Improve help texts (#14858)
Context dependent help text for audio and video drivers
Language corrections
2023-01-16 20:28:27 +01:00
sonninnos ddcea16634 Show Frame Delay without VSync (#14857) 2023-01-16 20:27:48 +01:00
sonninnos 4191e0a9d7 Add unified back action to all menu drivers (#14856) 2023-01-16 08:51:07 +01:00
sonninnos 127c676048 Cleanup runloop_environment logging + readability (#14855) 2023-01-16 01:49:25 +01:00
github-actions 6745d9a807 Fetch translations from Crowdin 2023-01-16 00:11:59 +00:00
warmenhoven 25afdcdcc8 Squashed 'deps/SPIRV-Cross/' changes from 2820ab0b51..6bba45d2a3 (#14853)
6bba45d2a3 Fix misc compilation issues with std::max.
49e4117c5f Updates for main branch rename.
88c6b49959 Merge pull request #2085 from KhronosGroup/fix-2075
a085227395 Merge pull request #2084 from KhronosGroup/fix-2069
1047c13d40 GLSL: Handle textureGatherOffsets properly.
f84527346d GLSL: Declare gl_in/gl_out as array more robustly.
38cd214007 Merge pull request #2083 from KhronosGroup/pr-2080
d46c10ebd3 Refactor PHI checks into block_is_noop instead.
bcbe33ad11 Also consider NonSemantic ExtInst in block_is_noop.
9d8ef6b36c Update test for updated block_is_noop check.
a61a541e1c Merge branch 'accept_noop' of https://github.com/loic-sharma/SPIRV-Cross into pr-2080
457fd3db70 Add tests for loops compiled with debug semantics.
07a629f149 Roll dependencies.
d69a2cafe5 Accept no ops
cded61dde3 Merge pull request #2076 from billhollings/ios-tier2-writable-images
284ccf5d2d Fixes from code review of adding writable images to iOS Tier2 argument buffers.
0bb28ef88a Merge pull request #2078 from KhronosGroup/fix-2072
549cde7fae Fix GCC5 build.
cc2b3b61a6 Merge pull request #2077 from EpicGames/fixes_glsl
6371580f51 Fixed typo in CompilerGLSL::should_dereference()
643b7be196 MSL: Add support for writable images in iOS Tier2 argument buffers.
a89dea3c49 Merge pull request #2071 from KhronosGroup/fix-2068
baf38f0593 Merge pull request #2070 from KhronosGroup/fix-2066
68a012a4f2 CFG: Handle implied access to opaque loaded values.
03b1f66ef1 GLSL: Fix row-major workaround wrapper for ES.
3c997e12eb Add C API option for enable row major workaround.
c77b09b57c Merge pull request #2063 from KhronosGroup/fix-2060
451ed10e91 Merge pull request #2062 from cdavis5e/msl-spirv-assembly-fixes
df76a14056 MSL: Refactor member reference in terms of one boolean.
e75c496ec6 Fix MSL Access Chain
540a1e82c6 Merge pull request #2056 from cdavis5e/msl-discarded-frag-checks
061cdd2052 MSL: Don't dereference forwarded copies of `OpVariable` pointers.
5547b25afe Interleave undef values with constants and types.
06ef3de002 GLSL, MSL: Handle `OpUndef` as part of a constant composite.
aa5a8c482e MSL: Prevent stores to storage resources in discarded fragments.
51d2dfe02a MSL: Add missing casts to `Op?MulExtended`.
c7ce92a95b MSL: Manually update `BuiltInHelperInvocation` when a fragment is discarded.
edd66a2fc9 Merge pull request #2055 from KhronosGroup/fix-2053
e8a22a7cf6 Handle ShaderDebugInfo non-semantic extension.
abc31207bf Merge pull request #2052 from KhronosGroup/hlsl-mesh-shader-ext
b606e4f752 HLSL: Fix test for non-block per-primitive IO.
ebf779dcfb HLSL: Do not support ClipCull size > 4 in mesh shaders.
94160e8890 GLSL: Add test for mesh with non-block builtin IO.
3a066cd733 HLSL: Handle case where PerVertex block is not used.
f5ef0a74fb HLSL: Make sure to test deeply nested functions in mesh shaders.
e418266d25 HLSL: Some cleanups and fixes in analyze_meshlet_writes.
892f65b3a6 HLSL: Fix some warnings from review.
a4d5c0c4a5 HLSL: Fix-up some style issues from review.
10f55a11eb HLSL: Add missing reference for mesh shader test.
322f1b9fb3 Fixup glslang reference.
80146a20da HLSL: Implement VK_EXT_mesh_shader
744279ec78 Merge pull request #2050 from cdavis5e/op-spec-constant-op-composite-insert
8cf99e7d44 MSL: Implement `CompositeInsert` `OpSpecConstantOp`.
3cecac74c6 Merge pull request #2051 from KhronosGroup/roll-glslang-dep
605bce39d7 Roll glslang dependency.
677299cc56 Merge pull request #2049 from KhronosGroup/fix-2046
4de9d6c2b6 MSL: Handle implicit integer promotion rules.
c813d8d67b Merge pull request #2044 from KhronosGroup/fix-2038
2a49f7e82d MSL: Fix restrict vs __restrict incompatibility.
3ea057a303 Merge pull request #2045 from KhronosGroup/fix-2037
0851baf9ee Merge pull request #2043 from KhronosGroup/fix-2040
47c7fc16eb HLSL: Add option to bind vertex input smemantics by name.
04af769e85 MSL: Handle partial access chains with array-of-UBO/SSBO.
5763919669 Merge pull request #2039 from cdavis5e/raw-buffer-tess-input
e698633e22 MSL: Account for composite types when assigning locations.
0b679334e4 MSL: Don't flatten arrayed per-patch output blocks in tessellation shaders.
a171087180 MSL: Support "raw" buffer input in tessellation evaluation shaders.
f09ba27777 Merge pull request #2035 from KhronosGroup/fix-2032
f15d465a52 Merge pull request #2034 from KhronosGroup/fix-2028
799d8c9e35 Merge pull request #2033 from KhronosGroup/fix-2029
b5386e3ea9 HLSL: Improve support for VertexInfo aux struct.
4ecdb24e59 MSL: Expose way to query if a buffer needs array length.
f3b1375b13 Add reflection support for shader record buffers.
c821207ae2 Merge pull request #2027 from billhollings/msl-opstore-addr-space-cast
0a1127aa50 MSL: Emit correct address space when casting during OpStore.
81ba8f78f6 Merge pull request #2025 from KhronosGroup/fix-2009
291def0793 MSL: Add more keywords to reserved set.
a7f64a8b90 MSL: Report unsupported 64-bit atomics.
ddaa2da629 Merge pull request #2024 from KhronosGroup/msl-descriptor-aliasing
a915e0bd4b MSL: Do not attempt to alias push constants.
adf0995bb9 Merge pull request #2023 from KhronosGroup/msl-descriptor-aliasing
24dc49e692 MSL: Handle descriptor aliasing of raw buffer descriptors.
1ad6006130 Merge pull request #2021 from siegelaaron94/opengles_texture1d_textureSize
7b4c470f16 GLSL: Account for ES sampler1D to sampler2D promotion in textureSize.
6d3518e238 Merge pull request #2018 from atyuwen/master
7afbbb624a Merge pull request #2019 from billhollings/msl-OpPtrEqual-OpPtrNotEqual-OppPtrDiff
5493b3030e MSL: Support OpPtrEqual, OpPtrNotEqual, and OpPtrDiff.
1b9296e1a5 MSL: only fix up gl_FragCoord if really necessary.
f6ca617825 Merge pull request #2017 from KhronosGroup/roll-deps
a5a7999666 Update mesh/task test references.
d7a6861f64 Update glslang/spirv-tools.
1e7e9fc32b Merge pull request #2015 from FrankXie05/vcpkg-instructions
8553588895 Merge pull request #2014 from cdavis5e/msl-shader-output-fixup
064eaebe72 MSL: Add a mechanism to fix up shader outputs.
d206e54ece Add vcpkg installation instructions
210a800130 Merge pull request #2012 from KhronosGroup/mesh-shaders
4c345166dc GLSL: Implement task shaders.
5762617729 GLSL: Implement GL_EXT_mesh_shader.
6a73e68d30 Update glslang reference.
ec7b9b0ce7 Update SPIR-V headers.
9fcf62784b Merge pull request #2011 from KhronosGroup/roll-deps
d24f41f1d5 Update dependencies.
c93ee9261e Merge pull request #2005 from atyuwen/master
f40dba4919 GLSL: added an option to disable row-major-load workaround.
10f2aa77da Skip remapped vars in 'fixup_reserved_names'
9afa82e7b8 GLSL: disable row major load around on GLES.
33e19e86bf Don't rename remapped variables like 'gl_LastFragDepthARM'
61c603f3ba Merge pull request #1996 from KhronosGroup/fix-1993
bc3987e59a MSL: Fix various bugs with Ptr/U bitcasts.
c084973c67 Merge pull request #1995 from KhronosGroup/fix-1992
05bbcc2d09 Do not optimize OpCompositeInsert for hoisted temporaries.
a725d8fad1 Fix minor style nit from review.
1bc05ef735 Merge branch 'master' of https://github.com/gpx1000/SPIRV-Cross
a9cadd4982 Merged in cts-shared-composite-variables (pull request #1)
fc4a12fd4f MSL: Use a wrapper type for matrices in workgroup storage.
faea931de3 MSL: Also replace `bool` with `short` in structures.
0cccd0a65a Merge pull request #1986 from KhronosGroup/fix-1975
4dfac510ed Handle multiple breaks out of switches.
c24d5a7b90 Merge pull request #1985 from KhronosGroup/fix-1973
8ba0820c9d Merge pull request #1984 from KhronosGroup/fix-1972
095e9e5cee Merge pull request #1982 from RandomShaper/hlsl_subgroup_scan
be904dcc1e Handle collapsed loops similar to collapsed selections.
f7e98c39db Avoid detection of false loop variables.
cb4e310f43 Merge pull request #1983 from KhronosGroup/fix-1979
1fe470b199 HLSL: Implement GroupOperation(Inclusive/Exclusive)Scan.
06ca9accd7 HLSL: Add option to emit entry point name 1:1 instead of main().
d8d051381f Merge pull request #1970 from KhronosGroup/fix-1969
963fdfdf68 Handle PHI in collapsed switch constructs.
f46745095d Merge pull request #1965 from billhollings/msl-physical_storage_buffer
064a697b18 MSL: Fix implicit conversion precision build error.
4185acc70d MSL: Fixes from review for SPV_KHR_physical_storage_buffer extension.
78eb5043f9 MSL: Fixes from review for SPV_KHR_physical_storage_buffer extension.
e6925974d1 Merge pull request #1966 from fred-wang/macos-snprintf
9c44a97faa address more review comments
1310f5ba4d Keep using sprintf on windows.
99f8613847 Fix compilation errors with deprecated sprintf function
ba3e6ffe03 Merge pull request #1964 from sergmister/patch-1
52c7c2dab6 MSL: Add support for SPV_KHR_physical_storage_buffer extension.
1bba4d5137 Fix typo
99b59b3528 Merge pull request #1963 from KhronosGroup/convert-u-to-rtas-fix
e08e0cf28d GLSL: Handle forced temporary OpConvertUToAccelerationStructureKHR.
89b1c24bdc Merge pull request #1961 from RandomShaper/hlsl_more_bitcasts
d8c5e39436 HLSL: Implement bit casts between Half and UShort.
197a273fd4 Merge pull request #1959 from KhronosGroup/fix-1955-1956
df21a99d1a GLSL: Add more extension ladder fallbacks for unusual integer sizes.
a97bbc24c5 Merge pull request #1958 from KhronosGroup/fix-1957
cdafafe93b Merge pull request #1954 from vkaytsanov/patch-1
533aab00b6 GLSL: Add missing KHR barycentric references.
46e4b5a3c8 Fix control flow bug where we missed continue;
612de70b38 Fix missing function in README sample
50b4d5389b Merge pull request #1953 from KhronosGroup/bary-khr
e45d01c41f Emit KHR barycentrics if source enables the KHR extension.
0aedc7d128 Roll dependencies.
af223101c6 Merge pull request #1952 from KhronosGroup/fix-1944
c8ab790163 Merge pull request #1951 from KhronosGroup/fix-1950
88e583d062 GLSL: Add basic support for GL_EXT_shader_atomic_float.
1c88730e12 GLSL: Implement 1D texture emulation for ES.
3f855646f0 Merge pull request #1948 from iwubcode/gl_layer_hlsl
a6976d596a HLSL: fix BuiltInLayer to emit semantic 'SV_RenderTargetArrayIndex' instead of 'SV_RenderTargetIndex'
b3ff97d0fe Merge pull request #1946 from KhronosGroup/fix-1943
48d50fa911 Merge pull request #1945 from KhronosGroup/fix-1938
d08ce828f4 Promote Unreachable cases into break to avoid fallthrough.
4b9e60273c Add tests for OpCompositeInsert edge cases.
23662668dd Attempt more optimal codegen for OpCompositeInsert.
d0c8dc3045 Merge pull request #1942 from KhronosGroup/no-fetch-grad-workaround
a3c4177324 GLSL: Don't apply Grad LOD workarounds for fetch.
bfefb5f511 Merge pull request #1941 from KhronosGroup/fix-1934
832d469048 Merge pull request #1940 from KhronosGroup/fix-1935
05206005ca MSL: Potentially cast loaded Input variables.
92164d38d1 GLSL: Do not analyze precision for Undef variables.
940efca099 Merge pull request #1936 from KhronosGroup/rt-stage-cli
0b303aab16 Add --stage handling for ray tracing.
0c8a79b0b5 Merge pull request #1932 from KhronosGroup/fix-1868
7eb5ced2a0 Refactor out query for operation type/result IDs.
7a6c2da9aa GLSL: Handle more proper semantics for RelaxedPrecision.
d28136cc7a GLSL: Clean up some ways of querying decoration flags.
a9d23d7652 Merge pull request #1931 from EpicGames/fixes_hlsl
65431446f4 HLSL: Add missing BuiltInLayer to HLSL backend.
6ae7ddb92a Merge pull request #1930 from KhronosGroup/fix-1928
960edcd396 Merge pull request #1929 from KhronosGroup/fix-1925
10a7631d50 HLSL: Add more comprehensible reserved identifier list.
40b3053b4c Handle early reads from loop variables with initializers.
c52333b984 Merge pull request #1924 from stefalie/master
ee4ac5c2ce Merge pull request #1927 from billhollings/msl-interface-block-array-length-1
3bca246ad2 MSL: Emit interface block members of array length 1 as arrays instead of scalars.
089cf27119 remove newline at eof
56fd17f552 add qualifiers to reference reflect json output
05c9a14422 cli: display missing memory qualifiers for reflect and dump-resources
d7cae5e7cd Merge pull request #1917 from KhronosGroup/fix-1906
0500f9ed5d Merge pull request #1916 from KhronosGroup/fix-1910
d2a4f9842b GLSL: Support GL_EXT_debug_printf.
5b18fb1bcd MSL: Pass down global RayQuery object to leaf functions.
779138f39f Merge pull request #1914 from RandomShaper/hlsl_view_index
2ea1c9b642 HLSL: Implement ViewIndex.
6a67891418 Merge pull request #1909 from skkkksdkfak/primitive_id
54c00b69a4 Translate gl_PrimitiveID to SV_PrimitiveID.
0d4ce028bf Merge pull request #1903 from KhronosGroup/fix-1900
17c52990d5 MSL: Fix goofy bugs in ray query.
a3996eccf3 Merge pull request #1896 from Roy-AMD/fix-condition-issue
749be80389 Use types have same widths in loop condition.
44691aa975 Merge pull request #1899 from billhollings/forward-volatile-vars-except-builtins
85f98eb0c5 Allow volatile vars that are not builtins to be forwarded.
d000b9e71c Merge pull request #1898 from KhronosGroup/pr-1859
191c57b6cc Merge pull request #1897 from KhronosGroup/fix-1763
a7eefbc114 HLSL: Disable FXC testing for rayquery shaders.
cd209ff46d HLSL: Update test from review.
c95338e03e Merge branch 'ray_query' of https://github.com/k-payl/SPIRV-Cross into pr-1859
7b9eaf0b5e MSL: Handle awkward mix and match of Offset / ArrayStride in constants.
251361bd6f VK_KHR_ray_query implementation
565db34cba Merge pull request #1892 from KhronosGroup/meta-lookup-cleanup
39bad2c1f9 Avoid redundant meta lookups in ParsedIR when setting member decorations.
d5c3bd8b5e Merge pull request #1890 from KhronosGroup/fix-1889
4ab5bbb4e5 Fixup names of anonymous inner structs.
0b51794f01 Merge pull request #1888 from KhronosGroup/msl-ib-variable-name-alias-fix
1ec9d018fd MSL: Handle aliased variable names for resources placed in IB struct.
213c5f42ea MSL: Fix minor nits.
4ec1fb0aa9 Merge pull request #1887 from billhollings/msl-use-var-name-for-flattened-interface-struct-members
0c0fd98322 MSL: Use var name instead of var-type name for flattened interface members.
3915c37bb1 Merge branch 'fixup_gl_helper_invocation' of https://github.com/RandomShaper/SPIRV-Cross
c4f9e4fde9 HLSL: Fix Helper Invocation wrongly allowed in compute.
a1803778c2 Merge pull request #1885 from KhronosGroup/helper-invocation-rework
b192b8887a MSL: Consider that gl_IsHelperInvocation can be Volatile.
15d29f00e2 Add test for SPIR-V 1.6 Volatile HelperInvocation.
93b0dc7718 Consider Volatile in should_forward().
476b6541fa Remove forwardable bit in SPIRVariable.
5d9fc2d903 HLSL: Add test for HelperInvocation.
005c14ad6a HLSL: Implement HelperInvocationEXT.
75224c6c7c Merge branch 'gl_helper_invocation' of https://github.com/RandomShaper/SPIRV-Cross
278a4c80ed HLSL: Add support for gl_HelperInvocation
6c7a40822f Merge pull request #1881 from KhronosGroup/relax-nan-checks
31be74a853 Add relax_nan_checks options.
b91ecf6077 Merge pull request #1880 from KhronosGroup/fix-1879
2ce1e5c140 Merge pull request #1878 from mysterymath/move
dc62cc792b Handle OpTerminateInvocation.
2a7f436135 Merge branch 'msl-add-nested-structs-to-io-blocks-squash'
7b594c125e Fix formatting nits from review.
bb4ced0280 MSL: Document clarification of location incrementing.
02d588b7e4 MSL: Fix var names in test shaders to avoid reserved identifiers.
3bb3b22b34 MSL: Non-functional fixes from PR code review.
3d4daab29d MSL: Support input/output blocks containing nested struct arrays
44c3333a1c Qualify std::move.
d16183d1d2 Merge pull request #1873 from KhronosGroup/fix-1861
02440e85cf Merge pull request #1872 from KhronosGroup/fix-1867
7af0a5f820 HLSL: Do not emit VPOS fixup unless position is active.
5555f2784b MSL: Refactor and fix use of quadgroup vs simdgroup.
a569680406 Merge pull request #1870 from abrachet/master
0eda71c409 Qualify move as std::move
c08ee860c8 Merge pull request #1869 from xndcn/msl
1b5c406a3d MSL: append entry point args to local variable names to avoid conflicts
188dc8b13c Merge pull request #1862 from flokart-world/feature/flatten-ubo-for-hlsl
64e058aa9b Merge pull request #1863 from KhronosGroup/various-fixes
ed4ded040e HLSL: Make --flatten-ubo work correctly
a56b22bf4e Add more scenarios where we can guarantee forward progress.
c716a9a5dd Add debug option to modify maximum number of compile iterations.
29cc18988c Fix regression from adding 64-bit switch support.
339e61a0e0 Do not emit hoisted access chain temporaries unless backend supports it.
5d9a95370f GLSL: Ensure correct signed integer type for more texture functions.
131278458e Merge pull request #1860 from KhronosGroup/docs-update
a8016a6470 Update documentation for descriptor set support in MSL/HLSL.
1a36968e5d [Spirv_msl] Fix normalize on half3/half2 (#1856)
53d94a982e Merge pull request #1852 from KhronosGroup/fix-1850
5a29181b35 Merge pull request #1851 from KhronosGroup/fix-1835
5b952d2cbf MSL: Rethink how opaque descriptors are passed to leaf functions.
ac46140ba3 Test aliased names in declared LUTs.
48b5a9069f Handle aliased names in spec constants.
08d5f5ed18 Merge pull request #1849 from KhronosGroup/fix-1844
9b25581d49 MSL: Handle constant construct of block-like array types.
79b13813c6 Merge pull request #1848 from KhronosGroup/fix-1843
5a5be7f9b9 MSL: Handle signed atomic min/max.
7dd974b9db Merge pull request #1847 from KhronosGroup/fix-1775
e940577fba Merge pull request #1846 from KhronosGroup/fix-1760
1d13a3e36a Rework how loop iteration counts are validated.
ef6bde6580 Do not forward expressions which carry a huge amount of dependencies.
a1bb29ccbb Merge pull request #1845 from KhronosGroup/pr-1842-fix
017cdfe25b Update references for GL_EXT_texture_buffer.
4407c0dd14 fix: GL_EXT_texture_buffer is more common than GL_OES_texture_buffer
fe5a0aa72f Merge pull request #1839 from KhronosGroup/spv1.6
e8b30cc31d Merge pull request #1838 from KhronosGroup/fix-1811
7c12228359 Add sanity test for SPIR-V 1.6 modules.
7c83fc22fa Add support for LocalSizeId.
35bb328443 Test: Add --allow-localsizeid flag for spirv-val.
eadca962c8 Merge pull request #1837 from KhronosGroup/roll-deps
a10d72e3b1 Merge pull request #1834 from chirsz-ever/chirsz/fix-msl-copy-array
fe8848a6f2 Roll dependencies.
9c0b74f73b Merge pull request #1836 from KhronosGroup/pr-1824-fixup
be333e0cab MSL: Move float2->3 TessCoord fixup to a better location.
2793d22af5 Merge branch 'master' of git://github.com/cfnptr/SPIRV-Cross
e0ae55d5e2 Merge pull request #1822 from etra0/add-diff
55a0291ce5 Merge pull request #1817 from etra0/fix-1784
90c252274d MSL: Allow copy array from UniformConstant storage
2acf0e73dd Fix gl_TessCoord arguments presence. Update reference shaders.
a66984072b Fix incorrect MSL gl_TessCoord variable type
2bb051206b test_shaders: Add the option to generate diff instead.
905b8244e7 Clamp vector element access to vector size.
e9cc640334 Merge pull request #1815 from etra0/fix-1768
25868923da Merge pull request #1819 from sindney/master
6d8302ef14 MSL: Add 64 bit switch support
4b0584ce70 ESSL: Vertex shader input doesn't support array types.
37dfb3f45f Merge pull request #1794 from etra0/master
5345051a85 Removed tracking of OpConstant and OpPhi.
7c3cb0b12c Merge pull request #1810 from billhollings/early-frag-tests-depth-out
248e9ae9ed MSL: Don't output depth and stencil values with explicit early fragment tests.
75e3752273 Added block.cases_32bit and reworked the cases fix
401296d3b8 Merge pull request #1808 from billhollings/depth-img-vs-depth-cmp
03f678dec4 Cast the switch selector in GLSL to uint32_t
fd252b21ff Separate (partially) the tracking of depth images from depth compare ops.
48046646ee Fixed wrong condition and formatting.
2e0fb3a778 Merge pull request #1807 from KhronosGroup/fix-1801
f1b411c9e8 GLSL: Deal with buffer_reference_align.
1adc53b107 Merge pull request #1806 from KhronosGroup/fix-1777
21a15b90e5 Merge pull request #1804 from KhronosGroup/fix-1759
2714f5410c CFG: Handle degenerate selection constructs.
e40d19bdbf MSL: Handle non-thread storage class in Modf/Frexp pointer versions.
f1d4aff85e Merge pull request #1805 from KhronosGroup/fix-1776
2c53d30664 Merge pull request #1803 from KhronosGroup/fix-1802
4561ecddbd Handle Modf/Frexp in more cases.
d295c2a046 Merge pull request #1800 from EddeDev/master
849978653a Merge pull request #1798 from billhollings/tess-output-clip
05e8e5a953 Correctly reflect declared buffer size for out of order members.
4dcf64a99b Fixed potential compilation error in spirv_cross_containers.hpp
250a02967d Removed unnecessary tracking of types.
4ebd56bf9e MSL: Correctly emit user(clip/cullN) for clip/cull builtins in tess output struct.
f099d714f3 Removing logic in the parser
04293e03fd Merge pull request #1797 from KhronosGroup/clone-protocol
0d03516382 Always use https protocol when cloning external test deps.
061397e32e Merge pull request #1792 from billhollings/uniform-struct-packing-nested
3eb5532979 Add 64 bit support for OpSwitch
be812c45e5 MSL: Remove over-zealous check for struct packing compatibility.
66adba17a8 Merge pull request #1791 from billhollings/msl-out-of-order-struct-offsets
76cb807c19 MSL: Fix type redirection when struct members are reordered to align with offsets.
29632959d2 Merge pull request #1787 from KhronosGroup/fix-1786
edf247fb1c MSL: Workaround compiler crashes when using threadgroup bool.
43eecb2360 SPIRV-Cross contribution needed for `INTEL_fragment_shader_ordering`
94dea2507e Merge pull request #1769 from audulus/spm2
f5219f47c3 Add Package.swift.
2a56c2bc04 Merge pull request #1783 from billhollings/more-unpacked-vectors
ab640bc3d3 Merge pull request #1782 from KhronosGroup/fix-1781
974a0818b8 MSL: Support more usecases for unpacked vectors.
2b5e17eca5 MSL: Never used templated array for RayQuery objects.
bc338710e1 MSL: Remove some redundant breaks.
5afb3d313f MSL: Fix some trivial bugs not caught by CI when adding ray query.
345a7d171c Merge pull request #1773 from congyue1977/master
2895a43274 Fix unsupported exceptions for ConvertUToAccelerationStructure & BindingTableRecordOffset.
d52ec1e196 Fix all requested changes, test_shaders.py supports compiling MSL 2.4 shaders, and the Intersection Query currently only supports MSL 2.4 on the iOS platform.
6d13c99273 Merge pull request #1780 from billhollings/out-of-bounds-swizzle-fix
595eb0c21d Per spec, support undefined behavior for out-of-bounds swizzles.
597f29d09d Support Metal 2.4 Intersection Query, Implement GL_EXT_ray_query.
e4243b898c Merge pull request #1766 from KhronosGroup/fix-1765
6382f15470 Test behavior around OpSelect with matrices.
6071df5840 Fix wrong detection of trivial_mix_op.
97a438d214 Merge pull request #1757 from KhronosGroup/fix-1754
f72bb3c6f5 Improve handling of INT_MIN/INT64_MIN literals.
457c00bd07 Merge pull request #1756 from KhronosGroup/fix-1753
91c25e8473 Merge pull request #1755 from KhronosGroup/fix-1751
9b2a8c7622 HLSL: Ensure synthetic NumWorkgroups variable is considered active.
bb04156d3c CLI/HLSL: Don't set explicit binding for synthesized NumWorkgroups CBV.
96d95fbb31 MSVC: Workaround crtdbg macroing free().
9462b90067 Merge pull request #1752 from billhollings/function-constants-opquantize
325f107c5b Merge pull request #1745 from billhollings/location-component-vecsize
ec054dad7f MSL: Support synthetic functions in function constants.
dee35bf3ce Merge pull request #1749 from billhollings/fastmath-quantize
ba66a91402 MSL: Use vec<T, n> in template SpvHalfTypeSelector for function spvQuantizeToF16().
a2671e35b0 MSL: Consolidate spvQuantizeToF16() functions into a single template function.
5742047b24 MSL: Honor infinities in OpQuantizeToF16 when compiling using fast-math.
05ac99ae23 Merge pull request #1748 from billhollings/fastmath-nocontraction
fb3defc9ef MSL: Honor DecorationNoContraction when compiling using fast-math.
548a23da34 MSL: Track location component to match vecsize between shader stages.
fe1af2ae72 Merge pull request #1747 from KhronosGroup/ci-fix
d579444a82 Merge pull request #1744 from billhollings/location-attribute-fix
6628e10fc6 Merge pull request #1746 from billhollings/fast-math-per-vulkan
3ca99bbbcc Remove tests for Ubuntu 16.04.
0f12557695 Remove obsolete Travis CI YML.
40141ffddf MSL: Selectively enable fast-math in MSL code to match Vulkan CTS results.
86dfac12c8 MSL: Fix location and component variable matching between shader stages.
b81334a513 Merge pull request #1738 from billhollings/return-value-after-discard-terminator
2a150f5a2f MSL: Add explanatory comment requested in PR review.
35e92e6ffb MSL: Return fragment function value even when last SPIR-V Op is discard (OpKill).
c2500e504d Merge pull request #1735 from billhollings/add-const-op-exprs
472f9d4f6d Add tests for OpSpecConstantOp ops OpQuantizeToF16 and OpSRem.
5fb1ca4f0d Add support for additional ops in OpSpecConstantOp.
51d8e7be94 Merge pull request #1734 from KhronosGroup/buffer-reference-uvec2
b8f1e71907 GLSL: Emit GL_EXT_buffer_reference_uvec2 as required.
d6fe75df10 Merge pull request #1732 from KhronosGroup/fix-1731
23c4480d8e Fix switch fallthrough case in some cases.
0e2880ab99 Merge pull request #1729 from KhronosGroup/fix-1726
2eea6a579b MSL: Consider that function/private variables can be block-like.
840d4483bc Merge pull request #1728 from KhronosGroup/fix-1727
5b0cafb416 Track temporary access for OpArrayLength result.
c062b6b852 Merge pull request #1725 from billhollings/fix-duplicate-glposition
fad1590786 Merge pull request #1722 from billhollings/row-maj-mtx-store-from-const
27e7abeab1 Merge pull request #1724 from billhollings/msl-const-expr-casting
e76fcf9309 MSL: Add test for fixes to MSL constant expression type down-casting.
3105e82b2e MSL: Fix duplicate gl_Position outputs when gl_Position defined but unused.
a75fe07546 MSL: Fix casting in constant expressions with different sizes.
9552ca5473 MSL: Support row-major transpose when storing matrix from constant RHS matrix.
bab4e5911b Merge pull request #1716 from KhronosGroup/terminator-access-fix
cb613eb675 Handle value access in terminators.
1964799fba Merge pull request #1715 from KhronosGroup/precise-fp16-fp64
ac11a91792 GLSL: Emit precise for fp16/fp64 types as well.
cd22336a38 Merge pull request #1712 from cdavis5e/msl-subgroup-ballot-simplify
03ad13bae6 MSL: Simplify spvSubgroupBallot().
18f3cd6810 GLSL: Ensure ray query object decls are flushed if allocated in Function.
e51630595f Merge pull request #1711 from KhronosGroup/fix-1690
5b227cc57c GLSL: Implement GL_EXT_ray_query.
6196e3b029 MSL: Remove redundant path for SampleMask.
2fcbef398c Merge pull request #1709 from billhollings/fix-sample-mask-in
fe08bf4af4 Remove EXPERIMENTAL from JSON reflection backend.
ebb5098def MSL: Adjust gl_SampleMaskIn for sample-shading and/or fixed sample mask.
be3988b13c Merge pull request #1706 from SpaceIm/fix/ios-bundle
a70ce5192e Merge pull request #1708 from KhronosGroup/fix-interpolant-access-chain
71b83a18f4 MSL: Add test for scalar access chain pull interpolant.
d42c0b2e08 Merge pull request #1707 from billhollings/fix-interpolant-access-chain
3e04eee491 MSL: Fix setting SPIRVCrossDecorationInterpolantComponentExpr decoration.
d74eaabde0 fix cross-build to iOS/tvOS/watchOS
1ae2b58f19 Merge pull request #1700 from pkasting/master
bf746bd680 Merge pull request #1699 from KhronosGroup/pervertexnv
7cdab07efe Fix -Wunreachable-code-aggressive.
206ee8f171 GLSL: Support pervertexNV in NV barycentric extension.
c5b8022e61 Merge pull request #1669 from KhronosGroup/1560-reuse1
54882ad16d Add GLSL.std.450.h to REUSE.
3781d49d7c .gitignore ignored new license text
c862f8d22d Actually checkout repo into new reuse job
f2a65545b8 Finish adding SPDX tags and setup a reuse checked in Github Actions CI
2ceca64004 Add missing copyright headers.
853e84e8bf Merge pull request #1698 from KhronosGroup/fix-1691
d6b29ab017 HLSL: Rewrite how block IO is emitted.
9338996f3b Merge pull request #1697 from KhronosGroup/fix-1693
3149095585 Merge pull request #1696 from KhronosGroup/fix-1694
d75666b170 GLSL: Emit num_views for OVR_multiview2.
8216e87f02 Handle SPIR-V 1.4 selection constructs.
9cdeefb5e3 Merge pull request #1692 from Kangz/fix_default_copy_dtor
6a85c695cc Fix IVariant -Wdeprecated-copy-with-dtor
2e1b5fb39e Merge pull request #1686 from KhronosGroup/fix-1684
fa42f1ce34 Merge pull request #1685 from KhronosGroup/fix-1683
449f68ef3b Ensure loop control flow hints only appear above loops.
d62b3c2b92 GLSL: Implement control flow hints.
165dbff228 Handle odd type for textureGather component.
585fc6f3cb MSL: Always enable support for base vertex/index on iOS.
a6ce49ca24 Merge pull request #1680 from xndcn/cc
02fb8f2a24 Add comment after inf/nan float number for clarifying.
ff61890722 Merge pull request #1679 from okuoku/fix-c-sample-code
38c6ef1d56 Fix C sample code in README.md
faec1a8643 Merge pull request #1678 from KhronosGroup/fix-1674
9ea0e8b859 Merge pull request #1677 from KhronosGroup/fix-1673
c87cb54499 MSL: Add CLI option for sampler suffix.
bf3793dd35 MSL: Improve handling of split tessellation access chains.
a6c9514856 Merge pull request #1676 from KhronosGroup/fix-1671
0214990e7c Merge pull request #1675 from KhronosGroup/fix-1670
26a4986009 GLSL: Implement noncoherent framebuffer fetch.
99ae0d32e9 MSL: Handle array with component when we cannot rely on user() attrib.
a64ddcdd49 MSL: Handle array of IO variable with Component decoration.
418542eaef Merge pull request #1668 from KhronosGroup/fix-1665
b8115ffbe0 HLSL: Implement invariant as precise.
e47a30e807 Honor NoContraction qualifier.
0eeaffe048 Merge branch '16-bit-int-types-glsl'
6dbab0df47 Update reference output.
0408c592dd Fixed 16 bit int types
72a2ec4c1b MSL: Fix '--msl-multi-patch-workgroup' out of bounds reads when dispatching more threads than control points (#1662)
995c7981cc Merge pull request #1663 from billhollings/metal-arg-buff-padding-patch
098cdd64f6 MSL: Padding for Metal argument buffers should not double-count SampledImages.
c624d5387c Merge pull request #1660 from KhronosGroup/fix-1658
82a77e534e MSL: Use proper array for quad tess levels.
b38e3b4a47 Merge pull request #1661 from KhronosGroup/fix-1659
0e963c62b6 HLSL: Support Shuffle wave ops.
bbcef69a45 Merge pull request #1657 from KhronosGroup/fix-1607
532f65583e Rewrite how non-uniform qualifiers are handled.
d137abeef5 Merge pull request #1655 from KhronosGroup/fix-1640
8e24e0b224 Merge pull request #1654 from KhronosGroup/fix-1641
71eb1754e3 Merge pull request #1653 from KhronosGroup/fix-1638
2cbc7f0f37 Merge pull request #1652 from KhronosGroup/fix-1644
b084f639cb Merge pull request #1651 from KhronosGroup/fix-1645
c89b5a1a3f GLSL: Support shading rate builtins.
3fd148450a GLSL: Implement gl_FragFullyCoveredNV.
f93a8fb1fe GLSL: Support GL_EXT_shader_image_load_formatted.
90c70e6605 MSL: Handle variable access in OpSelect.
96ba044f01 HLSL: Fix automatic location assignment in block IO.
3cb8e7c223 Merge pull request #1643 from KhronosGroup/fix-1639
ae9ca7d73c MSL: Fix copy of arrays to/from stage IO variables.
986196030d MSL: Don't use native arrays for tess level inputs.
4a379a00f3 MSL: Don't emit native array for masked clip/cull distance.
406af8ff4d c: Add C API for builtin stage IO reflection.
b4a380a04c Support reflecting builtins.
852f2da63c Check SPIR-V 1.4 rules when reflecting resources.
682a227f4b MSL: Make builtin argument type declaration context sensitive.
c1edd35d57 MSL: Use spvUnsafeArray for builtin arrays after all.
7b9a591aa7 MSL: Hoist out to_tesc_invocation_id() in more places.
75ed73818c MSL: Handle loading Clip/CullDistance in TESE.
a159334895 MSL: Correctly analyze if builtin block is active.
cea934c03f MSL: Test that we can capture cull distance to buffer.
5826298697 MSL: Handle CullDistance better.
23da445bd4 MSL: Emit multiple threadgroup slices for multi-patch.
b442500204 MSL: Unroll initializations of CullDistance/ClipDistance control points.
c9946296dd MSL: Fix initialization of masked threadgroup variables.
ee85bb345e Fix print_help comment.
faf80b08fc MSL: Don't report fallback location allocations as being "used".
adc5fe3615 C: Add C api for stage output masking.
5e9c2d060e MSL: Cleanup fallback IO block emission.
e32c474911 MSL: Handle masking of TESC IO block members.
dc54f75eec MSL: Fixup gl_PerVertex names if we're emitting masked builtins.
40f628f49c MSL: Add test for complex control point outputs.
46c48ee6b5 MSL: Rewrite how IO blocks are emitted in multi-patch mode.
425e968720 MSL: Handle flattening of patch block outputs as well.
8e2dbe0d38 MSL: Do not declare patch variables on stack.
ff3f5bcba5 MSL: Handle masking of builtin control points.
6ecdd64a91 MSL: Emit a masked builtin IO block if necessary.
436b1250da MSL: Do not perform scalar fixups for control-point outputs.
22c9b63e78 MSL: Fix argument_decl check for builtin.
c635c35c12 MSL: Temporarily allow empty output struct.
a59e25db18 MSL: Small refactors.
74b2acab9b MSL: Always emit block variable for block types.
ae7bb41ef4 MSL: Test that we can mask location writes in TESC.
3255d6cef0 MSL: Explicitly only consider masked variables to be thread-group-like.
ba93b6518d MSL: Fix masking of vertex block outputs.
a393de31e6 MSL: Refactor out variable/block member masking.
857295a9ab MSL: Add tests for masking with --for-tess.
43b6ea2c9a MSL: Remove position mask tests. They will fail compilation.
e7b37392bf MSL: Emit correct address space for masked arguments.
65b5ff7ece MSL: Don't emit weird reference type for spvUnsafeArray types.
e7824c8b6e MSL: Handle masked outputs in extract_global_variables.
50a6bc058a MSL: Force builtin arrays for builtin array types.
88b54f5dab MSL: Add tests for vertex output masking.
394c038bfd MSL: Do not consider effective storage for any composite.
04988b89b9 MSL: Handle effective storage for masked CP outputs.
f2b5fb3f45 MSL: Emit threadgroup storage class for masked control point outputs.
ea91579a7f MSL: Do not redirect tess access chains on masked outputs.
9c1cadd440 Add --mask-stage-output-* CLI options.
f682e89188 MSL: Correctly emit array type for masked outputs.
2a2d57df13 MSL: Sketch out API to aid LTO-style optimization.
9a144bb2b9 Clean up member sorting.
0997e81118 MSL: Sort builtin IO block members by builtin type.
b4aa6dacfa MSVC: Add /bigobj for debug builds.
45818c14e4 Merge pull request #1648 from billhollings/msl-pad-arg-buff-structs
b3bfe22eaa MSL: Fixes to support padding Metal argument buffer entries based on argument index.
daba0dfba6 MSL: Fixes to support padding Metal argument buffer entries based on argument index.
9060e5a13c MSL: Fixes to support padding Metal argument buffer entries based on argument index.
9866cf4496 MSL: Fixes to support padding Metal argument buffer entries based on argument index.
6c0e11f907 Merge branch 'master' of https://github.com/billhollings/SPIRV-Cross into msl-pad-arg-buff-structs
582749ac68 Merge pull request #1650 from Dredhog/active-builtins-c-api
edde535574 c: Remove SPVC_PUBLIC_API prefix from API implementation
215f31b33f c: Add missing API to query active builtins.
17dab614dc MSL: Support padding Metal argument buffer entries based on argument index.
d2e1e7ba98 Fix Github CI in PRs.
28ae7b8f35 Merge pull request #1642 from mehmetoguzderin/msl-long-ulong-member
e2f7a753d2 Move condition to default block
0a0c9db9be MSL: Support long ulong types in buffers in 2.3+.
84d1f8aa2a Use Github actions CI tag.
2e000a0be4 Add GitHub Actions script.
60aa24566e Merge pull request #1633 from KhronosGroup/fix-1626
ee31e84e30 GLSL: Handle complex load/store scenarios to gl_SampleMask.
fb1f295aaf Merge pull request #1635 from KhronosGroup/fix-1627
5d846acee5 Merge pull request #1634 from KhronosGroup/fix-1625
0ac70fa7ca Merge pull request #1632 from KhronosGroup/fix-1629
4ca06c7278 Handle edge cases in OpCopyMemory.
aea6d29aa8 MSL: Add test for logical subgroup arith ops.
d6c2c1b39a HLSL: Support logical subgroup ops.
5570043af3 GLSL: Add support for Logical subgroup ops.
bc4cb1b3c5 Throw if SPIR-V module has no entry points.
d57ab68a21 Merge pull request #1630 from KhronosGroup/fix-1628
97796e0609 MSL: Deal with pointer-to-pointer qualifier ordering.
621884d709 Merge pull request #1622 from KhronosGroup/fix-1619
da238e5f12 Merge pull request #1623 from phuang/patch-2
c66a571057 Add two missing source files
b1e36a1f78 Merge pull request #1621 from KhronosGroup/fix-1618
85704f70bc MSL: Handle load and store to TessLevel array in TESC.
ce552f4f91 MSL: Gracefully assign automatic input locations to builtin attributes.
aa271c1460 MSL: Refactor out location consumption count computation.
6f1f6775f3 Add comment where aux image atomic buffers are reflected from.
92d379bab4 Merge pull request #1620 from phuang/patch-1
bc3416a18f Fix build errors on Windows
bae17e8204 Merge pull request #1617 from KhronosGroup/fix-1608
5789e3eed9 Merge pull request #1616 from KhronosGroup/fix-1609
daddbd4078 MSL: Fixup type when using tessellation levels in TESC functions.
0ad12a0036 MSL: Always return [[position]] when required.
05a1a07f70 Merge pull request #1615 from KhronosGroup/fix-1612
09dc76f68a c: Add missing IOS_SUPPORT_BASE_VERTEX_INSTANCE option.
8f5ab50fb8 Merge pull request #1614 from KhronosGroup/fix-1610
21a931613e HLSL: Add vector to illegal names list.
4741bbaa64 Merge pull request #1606 from billhollings/position-invariance
8e03cb60a5 Expose position invariance.
84a41cd488 Merge pull request #1603 from KhronosGroup/small-improvements
ea02a0c03a Check entry point variables in is_hidden_variables.
4bedad3860 Handle nonuniformEXT qualifier for acceleration structures.
7ab3f3f74e Deal better with CompositeExtract from constant composite.
66fb0bd9df GLSL: Handle tracing against incoming payload/callable.
9acb9ec31f Merge pull request #1594 from KhronosGroup/fix-1591
a5eaf2f44a Merge pull request #1595 from KhronosGroup/copyright-update
4704482bbc meta: Update copyright headers to 2021.
4c866e4662 Fix pathological complexity explosion for certain shaders.
820179bf46 Merge pull request #1590 from KhronosGroup/fix-1584
2097c30985 GLSL: Support both SPV_KHR_ray_tracing and NV_ray_tracing.
702c903f98 Merge pull request #1589 from KhronosGroup/roll-deps
ce18d1b8a5 CLI: Fix silly regression with handling of -V.
5d82d32e0f Roll dependencies.
0e5078dc0c Merge pull request #1588 from KhronosGroup/fix-1582
893a011299 MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers.
3136e34215 MSL: Always use input_attachment_index for framebuffer fetch binding.
134a520034 Merge pull request #1587 from KhronosGroup/refactor-active-variable-consideration
03ee71e86c Add test for pure initializer gl_FragDepth.
3776d8978c GLSL: Force block declaration if clip/cull is used in tesc.
014b3bc5ea MSL: Make sure initialized output builtins are considered active.
a4a9b53b5b MSL: Always enable Outputs in vertex stages.
fa76d01203 MSL: Only consider builtin variables if they are part of IO interface.
c8837d7d80 MSL: Very slight refactor.
234c65c0f3 Merge pull request #1585 from KhronosGroup/fix-1569
72e9f619a9 Merge pull request #1583 from KhronosGroup/fix-1567
42ec132357 Merge pull request #1581 from KhronosGroup/fix-1554
c033a93951 GLSL: Fix -Wshadow error.
1a28a04333 GLSL: Update SPIR-V headers for modified ray tracing opcodes.
02b7f9cbe9 CLI: Add stdin support.
efed4c9738 MSL: Fix initializer for tess level outputs.
ab9200ffdf MSL: Don't flatten builtin arrays unless they're part of IO interface.
df4f8ef8fe MSL: Emit correct initializer for tessellation control points.
ad3e1584f9 MSL: Handle initializers for tess levels.
39fee93906 GLSL: Refactor out Output variable initialization.
6a3ea0385e GLSL: Add test for initializing tess level output.
175381fe08 GLSL: Handle some extreme edge cases in Output variable initialization.
7b7a21c405 Merge pull request #1578 from KhronosGroup/fix-1568
1a38fec382 Minor redundant nit.
a1c784f002 More robust handling of initialized output builtin variables.
9a304fe931 Handle output IO block initializers more robustly.
49ab12919c Merge pull request #1577 from KhronosGroup/fix-1574
3514c9ff33 Merge pull request #1576 from KhronosGroup/fix-1571
3a85d1c80c CMake: Disable compiler extensions explicitly.
ddb3c65648 Handle reserved identifiers for functions.
c4ff129fe3 MSL: Handle reserved identifiers for entry point.
e50f7d1ce8 Merge pull request #1566 from KhronosGroup/subgroup-table-fix
c8765a75f2 GLSL: Fix KHR subgroup extension table for subgroups.
762c3082ae Merge pull request #1564 from KhronosGroup/fix-1558
1eb42eb18c Merge pull request #1563 from KhronosGroup/fix-1559
a11c4780d0 GLSL: Emit nonuniformEXT in correct place for late-combined samplers.
dc940846d7 GLSL/HLSL: Disallow VariablePointers capability outright.
6d10da0224 Merge pull request #1553 from comex/no-subgroups-in-vertex-shaders
f41b59b36e Merge pull request #1557 from KhronosGroup/mit-dual-license-api
cf1e9e0643 Add MIT dual license for the SPIRV-Cross API.
0b79db773f Merge branch 'master' of git://github.com/js6i/SPIRV-Cross
c09a65c12d MSL: Added fmin3 and fmax3 library functions to the illegal name list.
5a85fa9400 msl: Don't try to use [[thread_index_in_simdgroup]] in vertex shaders.
be527632a6 Merge branch 'unused' of git://github.com/comex/SPIRV-Cross
c80cbde7aa spirv_msl: Don't add fixup hooks for builtin variables if they're unused.
3d16060c32 Merge pull request #1551 from cdavis5e/msl-subgroup-inactive-ballot-mask
1e67b21ee9 MSL: Don't mask off inactive bits in ballot masks.
1f178be3c9 Merge branch 'msl-sample-rate-position' of git://github.com/cdavis5e/SPIRV-Cross
fd738e3387 MSL: Adjust FragCoord for sample-rate shading.
782916a797 Merge pull request #1549 from KhronosGroup/various-fixes
e07f0a9df5 GLSL: Fix buffer_reference with aliased names.
c5826b4b69 GLSL: Emit storage qualifiers for buffer_reference.
650b5e1b12 HLSL: Fix validation with FXC for test.
6a614cc7f7 Normalize all internal workaround methods to use spv prefix.
35d3b9c3e7 Merge branch 'msl-subgroup-ops-2' of git://github.com/cdavis5e/SPIRV-Cross
dabdf4eff6 Merge pull request #1547 from scribam/cmake-minimum-required
1eb4852856 CMake: Set minimum required version to 3.0
68908355a9 MSL: Expand subgroup support.
58291963c6 Merge branch 'glsl-vertex-attrib-64bit' of git://github.com/rdb/SPIRV-Cross
df5e3730ca GLSL: Require GL_ARB_vertex_attrib_64bit for double input in pre-4.10
b3c59263a0 Merge pull request #1541 from cdavis5e/msl-ios-features
88e25e60ec MSL: Expose some more features on iOS.
1ee2d13873 MSL: Add missing reference file.
ef0256c23e Fix switch fallthrough
0d6fad4ab9 Merge branch 'extract_subgroup_ops' of git://github.com/js6i/SPIRV-Cross
9c2c0a23b9 Merge pull request #1533 from rdb/texture-fetch-size-fallbacks
10fa5f62aa GLSL: Legacy / extension fallbacks for textureSize and texelFetch
f0239bce05 MSL: extract global variables from subgroup ballot operations
6fc2a0581a Run format_all.sh.
71fcf0d9e6 Update texture gather test result.
008f3baad7 Merge branch 'arb-texture-gather' of git://github.com/rdb/SPIRV-Cross
46bf1e99d6 Merge pull request #1525 from cdavis5e/msl-interpolation-functions
509908d8db GLSL: Add error checking and extension fallback for textureGather
683c3f5c3f Merge pull request #1530 from rdb/legacy-glsl-round
ea334c14bc Merge pull request #1527 from rdb/legacy-transpose
2417010046 Merge pull request #1528 from rdb/fix-legacy-vertex-shader-lod
1648747fa7 Merge pull request #1529 from KhronosGroup/fix-msl-gather-regression
b3bd674aa7 GLSL: Remove unused `lod` argument from legacy_tex_op()
bf71994dae GLSL: implement transpose() in GLSL 1.10 / ES 1.00
9e6e5d2738 GLSL: Fix round/roundEven for legacy GLSL.
e8c500ceef GLSL: Fix support for textureLod in legacy vertex shaders
db13762297 MSL: Fix regression in image gather handling.
aca9b6879a MSL: Support pull-model interpolation on MSL 2.3+.
a20c768698 Merge pull request #1524 from rdb/hlsl-round-even
854f566869 HLSL: Support roundEven() in HLSL SM 4.0 and above
2e1bdeb212 Merge pull request #1520 from rdb/dx9-dref-samplers
135933d59e HLSL: Add regression test for SM3.0 texture samplers
18893ba3b9 HLSL: Support depth comparison texture sampling in SM 2/3.
fc644b50e6 Merge pull request #1523 from KhronosGroup/fix-1512
512e851185 Merge pull request #1522 from KhronosGroup/fix-1510
b3344174f7 HLSL: Add option to flatten matrix vertex input semantics.
1f018b0fb8 Parser: Don't assume OpTypePointer will always take a SPIRType.
244839d350 Merge pull request #1516 from billhollings/VK_EXT_descriptor_indexing
4bdd49df3f Syntax and format updates from code review.
c5a3f37a1c Merge pull request #1519 from cdavis5e/msl-mac-comparison-bias-grad
dcd66c283c Merge pull request #1521 from devshgraphicsprogramming/master
6402586015 Updated ref file for subgroups_basicvoteballot.vk.comp
9a1af25f02 Merge pull request #2 from KhronosGroup/master
6c5f394b09 Fix some bad assumptions about emulating `subgroupBarrier`
7f67abe0fe Minor format and typo updates from code review.
547c29f7bb MSL: Allow Bias and Grad arguments with comparison on Mac in MSL 2.3.
8884b34940 Merge pull request #1517 from atyuwen/master
303f813166 Merge pull request #1518 from KhronosGroup/fix-nonuniform-bracket-handling
439b666829 GLSL: Fix nonuniformEXT injection.
871a023877 fixed compile error with -std=c++20
541a801fed Merge pull request #1514 from cdavis5e/msl-mac-framebuffer-fetch
c8a43876c7 added metal keyworld: "level" (#1501)
b7b0e804e5 MSL: Support run-time sized image and sampler arrays (GL_EXT_nonuniform_qualifier/SPV_EXT_descriptor_indexing).
c20d5945a2 MSL: Allow framebuffer fetch on Mac in MSL 2.3.
78c6d2d628 Merge pull request #1509 from cdavis5e/mac-post-depth-coverage
08e49bfd67 Merge pull request #1508 from KhronosGroup/fix-1507
346b0b6c21 Merge pull request #1493 from KhronosGroup/ubo-row-major-load-workaround
d48d2a95c7 MSL: Allow post-depth coverage on Mac in MSL 2.3.
542d460364 Handle case where block is loop header, continue AND break block.
e47561a28b GLSL: Support a workaround for loading row-major matrices.
5ae9153a78 Merge pull request #1505 from cdavis5e/msl-vertex-writes
1b6b9705e6 MSL: For 2.1+, don't disable rasterization for vertex writes.
1a95017d11 Merge pull request #1503 from KhronosGroup/travis-python-update
b3a74f3a22 Merge pull request #1504 from KhronosGroup/fix-1502
f65f259ab7 MSL: Do not use component::x gather for depth2d textures.
1d68cbfb1b Update TravisCI python reference.
dd35821f2f Merge pull request #1499 from cdavis5e/subgroup-fixes
1264e2705e MSL: Cast broadcast booleans to ushort.
065b5bda3c MSL: Mask ballots passed to Ballot bit ops.
781367d083 MSL: Support vectors with OpGroupNonUniformAllEqual.
6ccb902462 MSL: Correct definitions of subgroup ballot mask variables.
a57b4b1b2e Merge pull request #1498 from cdavis5e/msl-swizzle-arrayed-nonconstant
064ed448b9 MSL: Don't remove periods from swizzle buffer index exprs.
7b80307a7d Merge pull request #1495 from cdavis5e/1d-2d-offset-grad
5845e009ea MSL: Handle Offset and Grad operands for 1D-as-2D textures.
0db1569e97 Merge pull request #1492 from KhronosGroup/non-native-matrix-fix
9c220a8247 Merge pull request #1490 from KhronosGroup/fix-1488
23a0cfc842 Merge pull request #1494 from cdavis5e/msl-tesc-tess-level-cast
3e6010d8c5 MSL: Don't use a bitcast for tessellation levels in tesc shaders.
120af42616 GLSL: Use need_transpose when checking for non-native matrix.
bd1ee4344e MSL: Support querying and modifying generated combined sampler suffix.
7332b44c3c Merge pull request #1489 from cdavis5e/msl-fix-atomic-image-coord
21d38f74ce MSL: Fix calculation of atomic image buffer address.
e827a06984 Merge pull request #1487 from cdavis5e/msl-atomic-image-interlock
7a5d0d6b29 MSL: Add missing interlock handling to atomic image buffers.
fab6ad234e Merge pull request #1486 from cdavis5e/atomic-image-argument-buffer
cc7aabce72 Merge pull request #1485 from cdavis5e/msl23-demote-to-helper
9cafea6cf8 MSL: Support atomic access to images from argument buffers.
2219c4a392 MSL: Support SPV_EXT_demote_to_helper_invocation for MSL 2.3.
401af49326 Merge pull request #1482 from KhronosGroup/gl-subgroup-merge
5619329665 Style nits for GL subgroup implementation.
a6f6547cf1 Add missing VK variant of the test file.
28994a3186 Update GL subgroup test file.
819c599ecd Merge branch 'issues1350-2' of git://github.com/devshgraphicsprogramming/SPIRV-Cross into master
db52e277b9 Resolved issues 1350, 1351, 1352
5cc2e4f634 Merge pull request #1475 from KhronosGroup/fix-1474
e0c9aad934 GLSL: Add support for transform_feedback3 geometry streams.
7a99d1cb72 GLSL: Use literal array size for cull/clip array sizes.
e6f5ce6b89 Merge pull request #1471 from KhronosGroup/fix-1467
6254be910e Merge pull request #1470 from KhronosGroup/fix-1469
34a6a45fba Work around MSVC warning.
5ea576ece2 Allow flip_vert_y in all relevant stages.
ea3cd74426 Merge pull request #1468 from dj2/roll-09-22
9880b05572 Roll dependencies.
8891bd3512 Merge pull request #1466 from KhronosGroup/fix-1465
2144274a91 Clean up conditional branch codegen.
54cc0b01f6 Deal with case where a selection construct conditionally merges/breaks.
16d9fea77c Merge pull request #1463 from KhronosGroup/fix-1462
66afe8c499 Implement a simple evaluator of specialization constants.
bdbef7b1f3 Merge pull request #1461 from Kangz/fix-warnings
bcd71536e2 Fix -Wduplicate-enum and -Wrange-for-analysis.
ba2d0e17d3 Merge pull request #1460 from KhronosGroup/fix-1458
446596643a Roll glslang/SPIRV-Tools deps.
18d03b3ea6 Handle OpUndef %void.
bad9dab8df Merge pull request #1457 from cdavis5e/msl-layered-subpass-data
4cf840ee7b MSL: Support layered input attachments.
c7507e39d4 Merge pull request #1456 from KhronosGroup/fix-1455
3360daa6f3 MSL: Fix OpCompositeInsert and OpVectorInsertDynamic.
9e3dbdc8d6 Merge pull request #1454 from cdavis5e/msl-multiview-non-layered
cab7335e64 MSL: Don't set the layer for multiview if the device doesn't support it.
4752a44f9e Merge pull request #1453 from cdavis5e/msl-multiview-base-instance
53080ecca8 MSL: Fix multiview view index calculation with a non-zero base instance.
685f86471e Merge pull request #1452 from KhronosGroup/minor-nits
95993f78af Run format_all.sh.
ee1b4e7042 Work around annoying warning on GCC 10.2.
eec76b04c7 Merge pull request #1450 from KhronosGroup/fix-1440
a07441568e Overhaul how we deal with reserved identifiers.
f0fe4442e3 Merge pull request #1448 from KhronosGroup/fix-1437
4f0f0e5a07 Merge pull request #1449 from KhronosGroup/fix-1443
fdbc80d131 HLSL: Fix FragCoord.w.
fad36a6b28 HLSL: Deal with partially filled 16-byte word in cbuffers.
dd1f53ff15 HLSL: Fix bug in is_packing_standard for cbuffer.
4c7944bb42 Merge pull request #1446 from kakashidinho/master
ab8eb70af1 Fix #1445: MSL: Enclose args when convert distance(a,b) to abs(a-b)
82d1c43e40 Merge pull request #1441 from cdavis5e/msl-tesc-composite-out
3347b1076d MSL: Fix handling of matrices and structs in the output control point array.
c333445ada Merge pull request #1436 from KhronosGroup/fix-1408
8a1843ab20 Add some test cases for complex type aliasing scenario.
eb580d6656 Ensure that we use primary alias type when emitting flattened members.
aac6885950 GLSL: Be more aggressive about using type_alias.
038b0bf238 Only rewrite type aliases for the base type.
7778792aec Merge pull request #1434 from KhronosGroup/glsl-force-flattened-io
57c93d44ac GLSL: Add option to force flattening IO blocks.
f5e9f4a172 Merge pull request #1432 from ponitka/hlsl-sample-mask
ba58f78395 Adding BuiltInSampleMask in HLSL
0376576d2d Merge pull request #1429 from ponitka/master
18f23c47d9 Enabling setting a fixed sampleMask in Metal fragment shaders.
934825a6a2 Merge pull request #1294 from cdavis5e/msl-multi-patch-workgroup
688c5fcbda MSL: Add support for processing more than one patch per workgroup.
3dcc23a5b3 Merge pull request #1431 from dj2/roll-07-22
ac08a89cf0 Merge pull request #1430 from cdavis5e/msl-refactoring
c4f3d4ae29 Roll GLSLang, SPIRV-Headers and SPIRV-Tools.
884bc6df65 MSL: Factor creating a uint type into its own method.
5e13f7fdf2 MSL: Factor a really gnarly condition into its own method.
6575e451f5 Merge pull request #1423 from KhronosGroup/msvc-2013-fix
36c999ae3f MSVC 2013: Fix silently broken builds.
39ce5b46de Merge pull request #1421 from troughton/patch-3
b74a84e4cb MSL: Ensure OpStore source operands are marked for inclusion in function arguments
559b21c6c9 Merge pull request #1420 from dj2/roll-07-06
63fbdaca93 Roll deps.
3b366db7f1 Merge pull request #1416 from KhronosGroup/fix-1415
711300baed MSL: Do not emit swizzled writes in packing fixups.
fa5b206d97 MSL: Workaround broken vector -> scalar access chain in MSL.
fab75792a9 Merge pull request #1419 from KhronosGroup/msl-input-attachment-index-fallback
e1600d4df8 MSL: Use input attachment index directly for resource index fallback.
c465cd5004 Merge pull request #1417 from KhronosGroup/fix-351
2ac8f51b06 GLSL: Support I/O flattening with arrays as final type.
2d43103a55 GLSL: Support multi-level struct flattening for I/O.
d573a95a9c Run format_all.sh.
8f716947c2 test: Use --hlsl-dx9-compatible when attempting to compile SM 3.0 shaders.
2894b40868 Merge pull request #1412 from KhronosGroup/fix-1411
70f17142de GLSL: Fix nested legacy switch workarounds.
b1082c10af Merge pull request #1410 from KhronosGroup/fix-1406
42096ca4a1 Merge pull request #1409 from KhronosGroup/fix-1405
4d79d634f5 GLSL: Implement switch on ESSL 1.0.
bae76d7915 GLSL: Use for-loop fallback instead of do/while for legacy ESSL.
3afbfdb090 Implement context-sensitive expression read tracking.
05188aca69 Fix bug with control dependent expression tracking.
2e7a562583 Merge pull request #1404 from KhronosGroup/fix-1402
eb0f0323d3 HLSL: Workaround FXC bugs with degenerate switch blocks.
f9ae06512e Merge pull request #1401 from dj2/roll-deps-22
9eb615c63b Merge pull request #1400 from KhronosGroup/fix-1399
0abc017501 Roll deps and update tests.
f9da366ae6 MSL: Remove the old VertexAttr API.
7edaea87cf Merge pull request #1398 from Kangz/fix-deprecation
6add77aa97 Merge pull request #1397 from KhronosGroup/fix-1396
8aee532f56 Fix placement of SPIRV_CROSS_DEPRECATED.
f141521ebe Fix duplicated initialization for loop variables with initializers.
d7976b7b24 Merge pull request #1395 from KhronosGroup/fix-1394
ace4d25222 MSL: Add test case for constructing struct with non-value-type array.
7314f51a32 MSL: Deal with loading non-value-type arrays.
02db4c1f16 MSL: Add tests for array copies in and out of buffers.
03d4bcea68 MSL: Improve handling of array types in buffer objects.
11832b6e14 Clean up some deprecation warnings when building with Makefile.
5e509b159a Remove unused member in MSLShaderInput.
a64484f62b Merge pull request #1392 from cdavis5e/msl-frag-input-vecsize
5281d9997e MSL: Fix up input variables' vector lengths in all stages.
7073ed2edb Merge pull request #1393 from KhronosGroup/fix-1391
d13dc0ce47 HLSL: Fix texProj in legacy HLSL.
9e3df69d4e Merge pull request #1390 from rdb/master
031cbaa5a2 GLSL: Require GL_ARB_draw_instanced for gl_InstanceID in GLSL < 1.40
92fcd7d2b0 Merge pull request #1389 from KhronosGroup/sparse-clamp
f383cc98f2 GLSL: Handle the rest of GL_ARB_sparse_texture_clamp.
bbefea2b02 Merge pull request #1388 from KhronosGroup/uint-sparse-residency-query
857e1c445c GLSL: Support uint code for sparse residency query.
553a7f959b Merge pull request #1385 from KhronosGroup/fix-1237
cbe0cca73b Refactor texture fetch function generation.
b73c047faf Merge pull request #1387 from Lichtso/master
1f5875e23e Fix missing switch cases in Y'CbCr conversion
3ce81c0025 Merge pull request #1384 from KhronosGroup/fix-1380
757c10bbe4 Merge pull request #1383 from KhronosGroup/fix-1381
275974e062 GLSL: Implement sparse feedback.
6600793884 MSL: Remove obsolete MSLVertexAttr members.
2d5200650a HLSL: Add native support for 16-bit types.
d385bf096f Merge pull request #1378 from bbernhar/issue_410
32bead81c8 Prefer set/binding API
999a7b5256 Merge pull request #1379 from KhronosGroup/fix-1377
165392a2b0 Document all CLI options.
d31bc0247e Do not mask writes to remapped variables in all cases.
17bccc9f7e HLSL: Add option to treat certain SSBO bindings as UAV, even with readonly.
61cddd6307 Merge pull request #1376 from KhronosGroup/fix-1374
58dad82fcb Handle physical pointers in reflection API.
f992548434 Merge pull request #1372 from KhronosGroup/gl-draw-parameters
ef247e75ec GLSL: Improve support for GL_ARB_shader_draw_parameters in desktop GLSL.
ec558bc98e Merge pull request #1371 from dj2/roll-deps-21
3d01d1bf50 Roll SPIRV-Tools, SPIRV-Headers and GLSLang.
287e93ff80 Merge pull request #1370 from dj2/roll_deps_20
29ad40e93e Merge pull request #1369 from KhronosGroup/more-rt-tests
8bf916f575 Roll dependencies
b4dd0b6fb1 GLSL: Add more test shaders for hit attribute types.
66ec3e3e54 GLSL: Support ray payloads and hit attributes declared as Block.
271ad33380 GLSL: Add some more focused RT test shaders.
3c43f055df Merge pull request #1366 from KhronosGroup/fix-1365
f3a362b1aa HLSL: Implement image queries for UAV images.
d638d2df9c Merge pull request #1363 from KhronosGroup/rt-gl-instance-id
86380acf4d Support gl_InstanceID in RT shaders.
b7823ec389 Merge pull request #1361 from KhronosGroup/msl-single-element-array-refinement
107ab7c2b7 MSL: Avoid packed arrays in more cases.
de3698f0e0 Add missing reference files from PR merge.
b8ba89a1ac Merge branch 'master' of git://github.com/kakashidinho/SPIRV-Cross
9ddfe6db6d Fix #1359: MSL: If the packed type is scalar, don't emit "pack_" prefix.
92f7d36c72 Merge pull request #1356 from KhronosGroup/fix-1354
0ebb88cc39 MSL: Redirect member indices when buffer has been sorted by Offset.
137dbeb7f1 Merge pull request #1355 from Kangz/fix-microsoft-enum-value
a3a590a82e Fix -Wmicrosoft-enum-value
7e0295abf8 Merge pull request #1353 from zoddicus/updateSPIRVHeaders
76658247ac Update SPIR-V Headers to 1.5 rev 3
471990d4dc Merge pull request #1349 from KhronosGroup/fix-1348
35a9b793d6 Work around odd deadlock in test_shaders.py in --parallel mode.
d7d630a0b7 Merge pull request #1347 from KhronosGroup/fix-1343
4330b046be Merge pull request #1346 from KhronosGroup/fix-1340
9b7140e2ba Implement OpAtomicLoad/OpAtomicStore.
cbaaa02af9 Merge pull request #1345 from apayen/master
6ef47d6657 MSL: Fix case where subpassInput is passed to leaf functions.
4edfe96739 Fixed recursion in combined_decoration_for_member Members in nested structs were not properly iterated on, and as a result, flags like row major for matrices could be not propagated properly.
7ba0f8f087 Merge pull request #1342 from dj2/roll
171c646474 Roll GLSLang, SPIRV-Tools and SPIRV-Headers.
1ad1662a2b Merge pull request #1339 from KhronosGroup/fix-1338
5e5d1c27ce GLSL: Support f16x2 <-> f32 bitcast.
c58839bfd4 Merge pull request #1336 from KhronosGroup/fix-1333
bf289c37a2 Merge pull request #1337 from KhronosGroup/nonuniform-propagation-fix
bdb343ea06 Be a bit more careful what nonuniform state is propagated.
6b0e558169 Handle RayQueryKHR type.
78b4d9379b Update SPIR-V headers.
b2e934b53f Merge pull request #1328 from devshgraphicsprogramming/patch-1
5cb0f0a640 Merge pull request #1335 from KhronosGroup/fix-1325
127224d816 Fix issue #1327
58548e25a2 Merge pull request #1334 from KhronosGroup/fix-1332
7b9cba7424 HLSL: Add parens in unpackUint2x32 for clarity.
e4e4791c4e HLSL: Only allow 64-bit integers in SM 6.0.
a396744f89 Ensure unpack/pack2x32 tests are compatible with test suite.
55dfbead2f GLSL/HLSL: Support packUint2x32 and unpackUint2x32
f8592ecdfc MSL: Deal correctly with initializers on Private variables.
3fb86e4385 Merge pull request #1331 from KhronosGroup/fix-1321
17ad62eea4 MSL: Support edge case with DX layout in scalar block layout.
f38cbeb814 Merge pull request #1330 from KhronosGroup/fix-1320
ebf463674d MSL: Allow removing clip distance user varyings.
aa5fbc004b Merge pull request #1329 from godlikepanos/master
b3109b8ad0 Reflection: Add specialization constant name
90198199df Merge pull request #1324 from cdavis5e/msl-disabled-builtin-names
96f7008aa8 MSL: Force disabled fragment builtins to have the right name.
fbc560782c Merge pull request #1323 from cdavis5e/msl-disable-frag-only
495e48de44 MSL: Only disable output variables in fragment shaders.
54658d6255 Merge pull request #1319 from cdavis5e/msl-frag-outputs
b29f83c383 MSL: Add options to control emission of fragment outputs.
fcbc590937 Merge pull request #1316 from Malacath-92/master
4560ee24fd Improve compatibility with clang-cl
a1d9b474b5 Merge pull request #1314 from KhronosGroup/fix-1313
c7b75a8fe6 MSL: Do not use base expression with PhysicalTypeID OpCompositeExtract.
6637610b16 Merge pull request #1309 from KhronosGroup/fix-1305
941cceedb4 Expose a query if samplers or images are comparison resources.
b691b7d1e3 Do not add NonWritable/NonReadable decorations for regular images.
14f24d71ab Merge pull request #1308 from KhronosGroup/fix-1306
cfcd84319b Merge pull request #1310 from KhronosGroup/msl-force-declare-implicit-builtins
d9d3359ffb MSL: Deal with cases where builtin is implicitly needed, declared, but unused.
01cee74b02 Merge pull request #1307 from troughton/patch-1
28bf9057df HLSL: Add support for treating NonWritable UAV texture as SRV instead.
4cf736d753 MSL: mark BuiltInFragCoord as implicitly used for subpass reads
e58e8d5dbe Merge pull request #1303 from KhronosGroup/fix-1302
3cb6aeb480 MSL: Fix access chain for deep struct hierarchy on array of buffers.
84ec99c531 Merge pull request #1301 from dj2/roll_deps
32307df73a Roll GLSLang, SPIRV-Tools and SPIRV-Headers
9b3c5e12be Merge pull request #1299 from KhronosGroup/fix-1298
b8905bbd95 Add support for forcefully zero-initialized variables.
871c85d7f0 Merge pull request #1297 from KhronosGroup/fix-1295
04e877df12 GLSL: Implement GL_EXT_shader_framebuffer_fetch.
c2655ab291 Run format_all.sh.
c3d216c011 Merge pull request #1296 from KhronosGroup/fix-1292
05004a57ea GLSL/HLSL: Fix nonuniform qualifier for SSBO atomics.
a3d3c80dd7 GLSL/HLSL: Implement nonuniform qualifier for image atomics.
65aa0c35d6 include/spirv_cross: Fix typo.
7d42fd7f7b Merge pull request #1290 from KhronosGroup/fix-1289
185551bfaf HLSL: Do not emit globallycoherent for SRV ByteAddressBuffer.
d19f30a90e Merge pull request #1287 from KhronosGroup/read-write-decoration-tweaks
95cd20f1c7 Add test for disable-storage-image-qualifier-deduction.
c27e1efbf1 HLSL: Add option to always treat SSBO as UAV, even with readonly.
01968c4486 Add option to disable storage image qualifier deduction.
3ebc83da46 Remove old hack which forces NonWritable/NonReadable.
9deb6ffbba Merge pull request #1285 from KhronosGroup/vulkan-semantics-shorthand
3f2de0d5d3 Add -V alias for --vulkan-semantics.
c5f7b55756 Merge pull request #1284 from KhronosGroup/fix-1282
16796e92be MSL: Add C API for force native arrays.
d91e134500 MSL: Add native array test for composite array initialization.
30343f3e95 MSL: Reintroduce workaround for constant arrays being passed by value.
20b28f72fa MSL: Reinstate workaround for returning arrays.
c9d4f9cd74 MSL: Add a workaround path to force native arrays for everything.
f19fdb94d7 Merge pull request #1283 from dj2/roll
7ec16b64c8 Roll GLSLang, SPIRV-Tools and SPIRV-Headers
dffd33dd9d Merge pull request #1280 from KhronosGroup/fix-1278
92a4294c57 Reject SPIR-V modules with garbage ID bound.
c53b34765d Merge pull request #1277 from KhronosGroup/fix-1276
e81c1b1d98 HLSL: Declare undef variables as static.
7ac5c38838 Merge pull request #1275 from KhronosGroup/fix-1274
cec0502ba5 Remove old memory_scope flag from iOS barriers.
6b2add8e2c Merge pull request #1272 from KhronosGroup/fix-1271
6f5cb00148 Use GNUInstallDirs for include path as well.
cb0aca91ef Merge pull request #1273 from orbea/cmake
8b90526911 cmake: Don't hardcode the pkg-config file.
74544caa16 cmake: Use GNUInstallDirs.
d67c3393da CMake: Avoid warning when parent project uses VERSION in project().
68bf0f824c Merge pull request #1270 from KhronosGroup/fix-1266
dfffbb1cf3 Compile fix on older compilers.
655312cb47 GLSL: Support GL_ARB_enchanced_layouts for XFB.
306cb31bad Merge pull request #1239 from cdavis5e/msl-inline-uniform-blocks
ae6c05f6f4 MSL: Move inline uniform blocks to the end of the argument buffer.
fedbc35315 MSL: Support inline uniform blocks in argument buffers.
f9376058ce Merge pull request #1269 from KhronosGroup/fix-1267
8bbb5fb763 Make SmallVector noexcept.
883de24f79 Merge pull request #1268 from barath121/patch-1
eac76d9473 Typo at line 324
f9818f0804 Update license headers to 2020.
7a411258af Run format_all.sh.
af787a8a79 Merge pull request #1264 from KhronosGroup/msl-argument-buffer-persist
4054d650cf Merge pull request #1263 from KhronosGroup/fix-1232
c3bd136df1 MSL: Add support for force-activating IAB resources.
f79c1e2fed Deal with illegal names in types as well.
79700d5412 Merge pull request #1262 from KhronosGroup/json-reflection-improvements
57b70225ef Merge pull request #1261 from KhronosGroup/fix-379
762c87a7bb Reflection: Add array stride/matrix stride reflection.
18e24c3ca2 Reflection: Emit reflection information for array size literalness.
55fe6050fe GLSL: Implement geometry shader passthrough extension.
172e39f039 Merge pull request #1257 from KhronosGroup/fix-1236
74107a04d1 Merge pull request #1256 from KhronosGroup/fix-1252
cc153f8d7f HLSL: Add a resource remapping API similar to MSL.
2bbb012e9c MSL: Deal with sign on wave min/max.
88ddeec49a HLSL: Deal with casting for WaveActiveMin/Max.
5253da9e63 GLSL: Deal with sign in subgroup Min/Max operations.
34ba8ea4f2 Merge pull request #1255 from KhronosGroup/fix-1254
c256525c7b Run format_all.sh.
1cbd71b354 HLSL: Fix bug when reading and writing structs from SSBO.
151ff1e870 HLSL: Implement stores for complex…
2023-01-15 18:12:31 +01:00
sonninnos f8e94861b2 Core option setting type checks (#14852) 2023-01-15 16:06:56 +01:00
warmenhoven f347c2d192 Pull latest SPIRV-Cross, fixing Metal shader compilation (#14850)
* Squashed 'deps/SPIRV-Cross/' changes from 2820ab0b51..49e4117c5f

49e4117c5f Updates for main branch rename.
88c6b49959 Merge pull request #2085 from KhronosGroup/fix-2075
a085227395 Merge pull request #2084 from KhronosGroup/fix-2069
1047c13d40 GLSL: Handle textureGatherOffsets properly.
f84527346d GLSL: Declare gl_in/gl_out as array more robustly.
38cd214007 Merge pull request #2083 from KhronosGroup/pr-2080
d46c10ebd3 Refactor PHI checks into block_is_noop instead.
bcbe33ad11 Also consider NonSemantic ExtInst in block_is_noop.
9d8ef6b36c Update test for updated block_is_noop check.
a61a541e1c Merge branch 'accept_noop' of https://github.com/loic-sharma/SPIRV-Cross into pr-2080
457fd3db70 Add tests for loops compiled with debug semantics.
07a629f149 Roll dependencies.
d69a2cafe5 Accept no ops
cded61dde3 Merge pull request #2076 from billhollings/ios-tier2-writable-images
284ccf5d2d Fixes from code review of adding writable images to iOS Tier2 argument buffers.
0bb28ef88a Merge pull request #2078 from KhronosGroup/fix-2072
549cde7fae Fix GCC5 build.
cc2b3b61a6 Merge pull request #2077 from EpicGames/fixes_glsl
6371580f51 Fixed typo in CompilerGLSL::should_dereference()
643b7be196 MSL: Add support for writable images in iOS Tier2 argument buffers.
a89dea3c49 Merge pull request #2071 from KhronosGroup/fix-2068
baf38f0593 Merge pull request #2070 from KhronosGroup/fix-2066
68a012a4f2 CFG: Handle implied access to opaque loaded values.
03b1f66ef1 GLSL: Fix row-major workaround wrapper for ES.
3c997e12eb Add C API option for enable row major workaround.
c77b09b57c Merge pull request #2063 from KhronosGroup/fix-2060
451ed10e91 Merge pull request #2062 from cdavis5e/msl-spirv-assembly-fixes
df76a14056 MSL: Refactor member reference in terms of one boolean.
e75c496ec6 Fix MSL Access Chain
540a1e82c6 Merge pull request #2056 from cdavis5e/msl-discarded-frag-checks
061cdd2052 MSL: Don't dereference forwarded copies of `OpVariable` pointers.
5547b25afe Interleave undef values with constants and types.
06ef3de002 GLSL, MSL: Handle `OpUndef` as part of a constant composite.
aa5a8c482e MSL: Prevent stores to storage resources in discarded fragments.
51d2dfe02a MSL: Add missing casts to `Op?MulExtended`.
c7ce92a95b MSL: Manually update `BuiltInHelperInvocation` when a fragment is discarded.
edd66a2fc9 Merge pull request #2055 from KhronosGroup/fix-2053
e8a22a7cf6 Handle ShaderDebugInfo non-semantic extension.
abc31207bf Merge pull request #2052 from KhronosGroup/hlsl-mesh-shader-ext
b606e4f752 HLSL: Fix test for non-block per-primitive IO.
ebf779dcfb HLSL: Do not support ClipCull size > 4 in mesh shaders.
94160e8890 GLSL: Add test for mesh with non-block builtin IO.
3a066cd733 HLSL: Handle case where PerVertex block is not used.
f5ef0a74fb HLSL: Make sure to test deeply nested functions in mesh shaders.
e418266d25 HLSL: Some cleanups and fixes in analyze_meshlet_writes.
892f65b3a6 HLSL: Fix some warnings from review.
a4d5c0c4a5 HLSL: Fix-up some style issues from review.
10f55a11eb HLSL: Add missing reference for mesh shader test.
322f1b9fb3 Fixup glslang reference.
80146a20da HLSL: Implement VK_EXT_mesh_shader
744279ec78 Merge pull request #2050 from cdavis5e/op-spec-constant-op-composite-insert
8cf99e7d44 MSL: Implement `CompositeInsert` `OpSpecConstantOp`.
3cecac74c6 Merge pull request #2051 from KhronosGroup/roll-glslang-dep
605bce39d7 Roll glslang dependency.
677299cc56 Merge pull request #2049 from KhronosGroup/fix-2046
4de9d6c2b6 MSL: Handle implicit integer promotion rules.
c813d8d67b Merge pull request #2044 from KhronosGroup/fix-2038
2a49f7e82d MSL: Fix restrict vs __restrict incompatibility.
3ea057a303 Merge pull request #2045 from KhronosGroup/fix-2037
0851baf9ee Merge pull request #2043 from KhronosGroup/fix-2040
47c7fc16eb HLSL: Add option to bind vertex input smemantics by name.
04af769e85 MSL: Handle partial access chains with array-of-UBO/SSBO.
5763919669 Merge pull request #2039 from cdavis5e/raw-buffer-tess-input
e698633e22 MSL: Account for composite types when assigning locations.
0b679334e4 MSL: Don't flatten arrayed per-patch output blocks in tessellation shaders.
a171087180 MSL: Support "raw" buffer input in tessellation evaluation shaders.
f09ba27777 Merge pull request #2035 from KhronosGroup/fix-2032
f15d465a52 Merge pull request #2034 from KhronosGroup/fix-2028
799d8c9e35 Merge pull request #2033 from KhronosGroup/fix-2029
b5386e3ea9 HLSL: Improve support for VertexInfo aux struct.
4ecdb24e59 MSL: Expose way to query if a buffer needs array length.
f3b1375b13 Add reflection support for shader record buffers.
c821207ae2 Merge pull request #2027 from billhollings/msl-opstore-addr-space-cast
0a1127aa50 MSL: Emit correct address space when casting during OpStore.
81ba8f78f6 Merge pull request #2025 from KhronosGroup/fix-2009
291def0793 MSL: Add more keywords to reserved set.
a7f64a8b90 MSL: Report unsupported 64-bit atomics.
ddaa2da629 Merge pull request #2024 from KhronosGroup/msl-descriptor-aliasing
a915e0bd4b MSL: Do not attempt to alias push constants.
adf0995bb9 Merge pull request #2023 from KhronosGroup/msl-descriptor-aliasing
24dc49e692 MSL: Handle descriptor aliasing of raw buffer descriptors.
1ad6006130 Merge pull request #2021 from siegelaaron94/opengles_texture1d_textureSize
7b4c470f16 GLSL: Account for ES sampler1D to sampler2D promotion in textureSize.
6d3518e238 Merge pull request #2018 from atyuwen/master
7afbbb624a Merge pull request #2019 from billhollings/msl-OpPtrEqual-OpPtrNotEqual-OppPtrDiff
5493b3030e MSL: Support OpPtrEqual, OpPtrNotEqual, and OpPtrDiff.
1b9296e1a5 MSL: only fix up gl_FragCoord if really necessary.
f6ca617825 Merge pull request #2017 from KhronosGroup/roll-deps
a5a7999666 Update mesh/task test references.
d7a6861f64 Update glslang/spirv-tools.
1e7e9fc32b Merge pull request #2015 from FrankXie05/vcpkg-instructions
8553588895 Merge pull request #2014 from cdavis5e/msl-shader-output-fixup
064eaebe72 MSL: Add a mechanism to fix up shader outputs.
d206e54ece Add vcpkg installation instructions
210a800130 Merge pull request #2012 from KhronosGroup/mesh-shaders
4c345166dc GLSL: Implement task shaders.
5762617729 GLSL: Implement GL_EXT_mesh_shader.
6a73e68d30 Update glslang reference.
ec7b9b0ce7 Update SPIR-V headers.
9fcf62784b Merge pull request #2011 from KhronosGroup/roll-deps
d24f41f1d5 Update dependencies.
c93ee9261e Merge pull request #2005 from atyuwen/master
f40dba4919 GLSL: added an option to disable row-major-load workaround.
10f2aa77da Skip remapped vars in 'fixup_reserved_names'
9afa82e7b8 GLSL: disable row major load around on GLES.
33e19e86bf Don't rename remapped variables like 'gl_LastFragDepthARM'
61c603f3ba Merge pull request #1996 from KhronosGroup/fix-1993
bc3987e59a MSL: Fix various bugs with Ptr/U bitcasts.
c084973c67 Merge pull request #1995 from KhronosGroup/fix-1992
05bbcc2d09 Do not optimize OpCompositeInsert for hoisted temporaries.
a725d8fad1 Fix minor style nit from review.
1bc05ef735 Merge branch 'master' of https://github.com/gpx1000/SPIRV-Cross
a9cadd4982 Merged in cts-shared-composite-variables (pull request #1)
fc4a12fd4f MSL: Use a wrapper type for matrices in workgroup storage.
faea931de3 MSL: Also replace `bool` with `short` in structures.
0cccd0a65a Merge pull request #1986 from KhronosGroup/fix-1975
4dfac510ed Handle multiple breaks out of switches.
c24d5a7b90 Merge pull request #1985 from KhronosGroup/fix-1973
8ba0820c9d Merge pull request #1984 from KhronosGroup/fix-1972
095e9e5cee Merge pull request #1982 from RandomShaper/hlsl_subgroup_scan
be904dcc1e Handle collapsed loops similar to collapsed selections.
f7e98c39db Avoid detection of false loop variables.
cb4e310f43 Merge pull request #1983 from KhronosGroup/fix-1979
1fe470b199 HLSL: Implement GroupOperation(Inclusive/Exclusive)Scan.
06ca9accd7 HLSL: Add option to emit entry point name 1:1 instead of main().
d8d051381f Merge pull request #1970 from KhronosGroup/fix-1969
963fdfdf68 Handle PHI in collapsed switch constructs.
f46745095d Merge pull request #1965 from billhollings/msl-physical_storage_buffer
064a697b18 MSL: Fix implicit conversion precision build error.
4185acc70d MSL: Fixes from review for SPV_KHR_physical_storage_buffer extension.
78eb5043f9 MSL: Fixes from review for SPV_KHR_physical_storage_buffer extension.
e6925974d1 Merge pull request #1966 from fred-wang/macos-snprintf
9c44a97faa address more review comments
1310f5ba4d Keep using sprintf on windows.
99f8613847 Fix compilation errors with deprecated sprintf function
ba3e6ffe03 Merge pull request #1964 from sergmister/patch-1
52c7c2dab6 MSL: Add support for SPV_KHR_physical_storage_buffer extension.
1bba4d5137 Fix typo
99b59b3528 Merge pull request #1963 from KhronosGroup/convert-u-to-rtas-fix
e08e0cf28d GLSL: Handle forced temporary OpConvertUToAccelerationStructureKHR.
89b1c24bdc Merge pull request #1961 from RandomShaper/hlsl_more_bitcasts
d8c5e39436 HLSL: Implement bit casts between Half and UShort.
197a273fd4 Merge pull request #1959 from KhronosGroup/fix-1955-1956
df21a99d1a GLSL: Add more extension ladder fallbacks for unusual integer sizes.
a97bbc24c5 Merge pull request #1958 from KhronosGroup/fix-1957
cdafafe93b Merge pull request #1954 from vkaytsanov/patch-1
533aab00b6 GLSL: Add missing KHR barycentric references.
46e4b5a3c8 Fix control flow bug where we missed continue;
612de70b38 Fix missing function in README sample
50b4d5389b Merge pull request #1953 from KhronosGroup/bary-khr
e45d01c41f Emit KHR barycentrics if source enables the KHR extension.
0aedc7d128 Roll dependencies.
af223101c6 Merge pull request #1952 from KhronosGroup/fix-1944
c8ab790163 Merge pull request #1951 from KhronosGroup/fix-1950
88e583d062 GLSL: Add basic support for GL_EXT_shader_atomic_float.
1c88730e12 GLSL: Implement 1D texture emulation for ES.
3f855646f0 Merge pull request #1948 from iwubcode/gl_layer_hlsl
a6976d596a HLSL: fix BuiltInLayer to emit semantic 'SV_RenderTargetArrayIndex' instead of 'SV_RenderTargetIndex'
b3ff97d0fe Merge pull request #1946 from KhronosGroup/fix-1943
48d50fa911 Merge pull request #1945 from KhronosGroup/fix-1938
d08ce828f4 Promote Unreachable cases into break to avoid fallthrough.
4b9e60273c Add tests for OpCompositeInsert edge cases.
23662668dd Attempt more optimal codegen for OpCompositeInsert.
d0c8dc3045 Merge pull request #1942 from KhronosGroup/no-fetch-grad-workaround
a3c4177324 GLSL: Don't apply Grad LOD workarounds for fetch.
bfefb5f511 Merge pull request #1941 from KhronosGroup/fix-1934
832d469048 Merge pull request #1940 from KhronosGroup/fix-1935
05206005ca MSL: Potentially cast loaded Input variables.
92164d38d1 GLSL: Do not analyze precision for Undef variables.
940efca099 Merge pull request #1936 from KhronosGroup/rt-stage-cli
0b303aab16 Add --stage handling for ray tracing.
0c8a79b0b5 Merge pull request #1932 from KhronosGroup/fix-1868
7eb5ced2a0 Refactor out query for operation type/result IDs.
7a6c2da9aa GLSL: Handle more proper semantics for RelaxedPrecision.
d28136cc7a GLSL: Clean up some ways of querying decoration flags.
a9d23d7652 Merge pull request #1931 from EpicGames/fixes_hlsl
65431446f4 HLSL: Add missing BuiltInLayer to HLSL backend.
6ae7ddb92a Merge pull request #1930 from KhronosGroup/fix-1928
960edcd396 Merge pull request #1929 from KhronosGroup/fix-1925
10a7631d50 HLSL: Add more comprehensible reserved identifier list.
40b3053b4c Handle early reads from loop variables with initializers.
c52333b984 Merge pull request #1924 from stefalie/master
ee4ac5c2ce Merge pull request #1927 from billhollings/msl-interface-block-array-length-1
3bca246ad2 MSL: Emit interface block members of array length 1 as arrays instead of scalars.
089cf27119 remove newline at eof
56fd17f552 add qualifiers to reference reflect json output
05c9a14422 cli: display missing memory qualifiers for reflect and dump-resources
d7cae5e7cd Merge pull request #1917 from KhronosGroup/fix-1906
0500f9ed5d Merge pull request #1916 from KhronosGroup/fix-1910
d2a4f9842b GLSL: Support GL_EXT_debug_printf.
5b18fb1bcd MSL: Pass down global RayQuery object to leaf functions.
779138f39f Merge pull request #1914 from RandomShaper/hlsl_view_index
2ea1c9b642 HLSL: Implement ViewIndex.
6a67891418 Merge pull request #1909 from skkkksdkfak/primitive_id
54c00b69a4 Translate gl_PrimitiveID to SV_PrimitiveID.
0d4ce028bf Merge pull request #1903 from KhronosGroup/fix-1900
17c52990d5 MSL: Fix goofy bugs in ray query.
a3996eccf3 Merge pull request #1896 from Roy-AMD/fix-condition-issue
749be80389 Use types have same widths in loop condition.
44691aa975 Merge pull request #1899 from billhollings/forward-volatile-vars-except-builtins
85f98eb0c5 Allow volatile vars that are not builtins to be forwarded.
d000b9e71c Merge pull request #1898 from KhronosGroup/pr-1859
191c57b6cc Merge pull request #1897 from KhronosGroup/fix-1763
a7eefbc114 HLSL: Disable FXC testing for rayquery shaders.
cd209ff46d HLSL: Update test from review.
c95338e03e Merge branch 'ray_query' of https://github.com/k-payl/SPIRV-Cross into pr-1859
7b9eaf0b5e MSL: Handle awkward mix and match of Offset / ArrayStride in constants.
251361bd6f VK_KHR_ray_query implementation
565db34cba Merge pull request #1892 from KhronosGroup/meta-lookup-cleanup
39bad2c1f9 Avoid redundant meta lookups in ParsedIR when setting member decorations.
d5c3bd8b5e Merge pull request #1890 from KhronosGroup/fix-1889
4ab5bbb4e5 Fixup names of anonymous inner structs.
0b51794f01 Merge pull request #1888 from KhronosGroup/msl-ib-variable-name-alias-fix
1ec9d018fd MSL: Handle aliased variable names for resources placed in IB struct.
213c5f42ea MSL: Fix minor nits.
4ec1fb0aa9 Merge pull request #1887 from billhollings/msl-use-var-name-for-flattened-interface-struct-members
0c0fd98322 MSL: Use var name instead of var-type name for flattened interface members.
3915c37bb1 Merge branch 'fixup_gl_helper_invocation' of https://github.com/RandomShaper/SPIRV-Cross
c4f9e4fde9 HLSL: Fix Helper Invocation wrongly allowed in compute.
a1803778c2 Merge pull request #1885 from KhronosGroup/helper-invocation-rework
b192b8887a MSL: Consider that gl_IsHelperInvocation can be Volatile.
15d29f00e2 Add test for SPIR-V 1.6 Volatile HelperInvocation.
93b0dc7718 Consider Volatile in should_forward().
476b6541fa Remove forwardable bit in SPIRVariable.
5d9fc2d903 HLSL: Add test for HelperInvocation.
005c14ad6a HLSL: Implement HelperInvocationEXT.
75224c6c7c Merge branch 'gl_helper_invocation' of https://github.com/RandomShaper/SPIRV-Cross
278a4c80ed HLSL: Add support for gl_HelperInvocation
6c7a40822f Merge pull request #1881 from KhronosGroup/relax-nan-checks
31be74a853 Add relax_nan_checks options.
b91ecf6077 Merge pull request #1880 from KhronosGroup/fix-1879
2ce1e5c140 Merge pull request #1878 from mysterymath/move
dc62cc792b Handle OpTerminateInvocation.
2a7f436135 Merge branch 'msl-add-nested-structs-to-io-blocks-squash'
7b594c125e Fix formatting nits from review.
bb4ced0280 MSL: Document clarification of location incrementing.
02d588b7e4 MSL: Fix var names in test shaders to avoid reserved identifiers.
3bb3b22b34 MSL: Non-functional fixes from PR code review.
3d4daab29d MSL: Support input/output blocks containing nested struct arrays
44c3333a1c Qualify std::move.
d16183d1d2 Merge pull request #1873 from KhronosGroup/fix-1861
02440e85cf Merge pull request #1872 from KhronosGroup/fix-1867
7af0a5f820 HLSL: Do not emit VPOS fixup unless position is active.
5555f2784b MSL: Refactor and fix use of quadgroup vs simdgroup.
a569680406 Merge pull request #1870 from abrachet/master
0eda71c409 Qualify move as std::move
c08ee860c8 Merge pull request #1869 from xndcn/msl
1b5c406a3d MSL: append entry point args to local variable names to avoid conflicts
188dc8b13c Merge pull request #1862 from flokart-world/feature/flatten-ubo-for-hlsl
64e058aa9b Merge pull request #1863 from KhronosGroup/various-fixes
ed4ded040e HLSL: Make --flatten-ubo work correctly
a56b22bf4e Add more scenarios where we can guarantee forward progress.
c716a9a5dd Add debug option to modify maximum number of compile iterations.
29cc18988c Fix regression from adding 64-bit switch support.
339e61a0e0 Do not emit hoisted access chain temporaries unless backend supports it.
5d9a95370f GLSL: Ensure correct signed integer type for more texture functions.
131278458e Merge pull request #1860 from KhronosGroup/docs-update
a8016a6470 Update documentation for descriptor set support in MSL/HLSL.
1a36968e5d [Spirv_msl] Fix normalize on half3/half2 (#1856)
53d94a982e Merge pull request #1852 from KhronosGroup/fix-1850
5a29181b35 Merge pull request #1851 from KhronosGroup/fix-1835
5b952d2cbf MSL: Rethink how opaque descriptors are passed to leaf functions.
ac46140ba3 Test aliased names in declared LUTs.
48b5a9069f Handle aliased names in spec constants.
08d5f5ed18 Merge pull request #1849 from KhronosGroup/fix-1844
9b25581d49 MSL: Handle constant construct of block-like array types.
79b13813c6 Merge pull request #1848 from KhronosGroup/fix-1843
5a5be7f9b9 MSL: Handle signed atomic min/max.
7dd974b9db Merge pull request #1847 from KhronosGroup/fix-1775
e940577fba Merge pull request #1846 from KhronosGroup/fix-1760
1d13a3e36a Rework how loop iteration counts are validated.
ef6bde6580 Do not forward expressions which carry a huge amount of dependencies.
a1bb29ccbb Merge pull request #1845 from KhronosGroup/pr-1842-fix
017cdfe25b Update references for GL_EXT_texture_buffer.
4407c0dd14 fix: GL_EXT_texture_buffer is more common than GL_OES_texture_buffer
fe5a0aa72f Merge pull request #1839 from KhronosGroup/spv1.6
e8b30cc31d Merge pull request #1838 from KhronosGroup/fix-1811
7c12228359 Add sanity test for SPIR-V 1.6 modules.
7c83fc22fa Add support for LocalSizeId.
35bb328443 Test: Add --allow-localsizeid flag for spirv-val.
eadca962c8 Merge pull request #1837 from KhronosGroup/roll-deps
a10d72e3b1 Merge pull request #1834 from chirsz-ever/chirsz/fix-msl-copy-array
fe8848a6f2 Roll dependencies.
9c0b74f73b Merge pull request #1836 from KhronosGroup/pr-1824-fixup
be333e0cab MSL: Move float2->3 TessCoord fixup to a better location.
2793d22af5 Merge branch 'master' of git://github.com/cfnptr/SPIRV-Cross
e0ae55d5e2 Merge pull request #1822 from etra0/add-diff
55a0291ce5 Merge pull request #1817 from etra0/fix-1784
90c252274d MSL: Allow copy array from UniformConstant storage
2acf0e73dd Fix gl_TessCoord arguments presence. Update reference shaders.
a66984072b Fix incorrect MSL gl_TessCoord variable type
2bb051206b test_shaders: Add the option to generate diff instead.
905b8244e7 Clamp vector element access to vector size.
e9cc640334 Merge pull request #1815 from etra0/fix-1768
25868923da Merge pull request #1819 from sindney/master
6d8302ef14 MSL: Add 64 bit switch support
4b0584ce70 ESSL: Vertex shader input doesn't support array types.
37dfb3f45f Merge pull request #1794 from etra0/master
5345051a85 Removed tracking of OpConstant and OpPhi.
7c3cb0b12c Merge pull request #1810 from billhollings/early-frag-tests-depth-out
248e9ae9ed MSL: Don't output depth and stencil values with explicit early fragment tests.
75e3752273 Added block.cases_32bit and reworked the cases fix
401296d3b8 Merge pull request #1808 from billhollings/depth-img-vs-depth-cmp
03f678dec4 Cast the switch selector in GLSL to uint32_t
fd252b21ff Separate (partially) the tracking of depth images from depth compare ops.
48046646ee Fixed wrong condition and formatting.
2e0fb3a778 Merge pull request #1807 from KhronosGroup/fix-1801
f1b411c9e8 GLSL: Deal with buffer_reference_align.
1adc53b107 Merge pull request #1806 from KhronosGroup/fix-1777
21a15b90e5 Merge pull request #1804 from KhronosGroup/fix-1759
2714f5410c CFG: Handle degenerate selection constructs.
e40d19bdbf MSL: Handle non-thread storage class in Modf/Frexp pointer versions.
f1d4aff85e Merge pull request #1805 from KhronosGroup/fix-1776
2c53d30664 Merge pull request #1803 from KhronosGroup/fix-1802
4561ecddbd Handle Modf/Frexp in more cases.
d295c2a046 Merge pull request #1800 from EddeDev/master
849978653a Merge pull request #1798 from billhollings/tess-output-clip
05e8e5a953 Correctly reflect declared buffer size for out of order members.
4dcf64a99b Fixed potential compilation error in spirv_cross_containers.hpp
250a02967d Removed unnecessary tracking of types.
4ebd56bf9e MSL: Correctly emit user(clip/cullN) for clip/cull builtins in tess output struct.
f099d714f3 Removing logic in the parser
04293e03fd Merge pull request #1797 from KhronosGroup/clone-protocol
0d03516382 Always use https protocol when cloning external test deps.
061397e32e Merge pull request #1792 from billhollings/uniform-struct-packing-nested
3eb5532979 Add 64 bit support for OpSwitch
be812c45e5 MSL: Remove over-zealous check for struct packing compatibility.
66adba17a8 Merge pull request #1791 from billhollings/msl-out-of-order-struct-offsets
76cb807c19 MSL: Fix type redirection when struct members are reordered to align with offsets.
29632959d2 Merge pull request #1787 from KhronosGroup/fix-1786
edf247fb1c MSL: Workaround compiler crashes when using threadgroup bool.
43eecb2360 SPIRV-Cross contribution needed for `INTEL_fragment_shader_ordering`
94dea2507e Merge pull request #1769 from audulus/spm2
f5219f47c3 Add Package.swift.
2a56c2bc04 Merge pull request #1783 from billhollings/more-unpacked-vectors
ab640bc3d3 Merge pull request #1782 from KhronosGroup/fix-1781
974a0818b8 MSL: Support more usecases for unpacked vectors.
2b5e17eca5 MSL: Never used templated array for RayQuery objects.
bc338710e1 MSL: Remove some redundant breaks.
5afb3d313f MSL: Fix some trivial bugs not caught by CI when adding ray query.
345a7d171c Merge pull request #1773 from congyue1977/master
2895a43274 Fix unsupported exceptions for ConvertUToAccelerationStructure & BindingTableRecordOffset.
d52ec1e196 Fix all requested changes, test_shaders.py supports compiling MSL 2.4 shaders, and the Intersection Query currently only supports MSL 2.4 on the iOS platform.
6d13c99273 Merge pull request #1780 from billhollings/out-of-bounds-swizzle-fix
595eb0c21d Per spec, support undefined behavior for out-of-bounds swizzles.
597f29d09d Support Metal 2.4 Intersection Query, Implement GL_EXT_ray_query.
e4243b898c Merge pull request #1766 from KhronosGroup/fix-1765
6382f15470 Test behavior around OpSelect with matrices.
6071df5840 Fix wrong detection of trivial_mix_op.
97a438d214 Merge pull request #1757 from KhronosGroup/fix-1754
f72bb3c6f5 Improve handling of INT_MIN/INT64_MIN literals.
457c00bd07 Merge pull request #1756 from KhronosGroup/fix-1753
91c25e8473 Merge pull request #1755 from KhronosGroup/fix-1751
9b2a8c7622 HLSL: Ensure synthetic NumWorkgroups variable is considered active.
bb04156d3c CLI/HLSL: Don't set explicit binding for synthesized NumWorkgroups CBV.
96d95fbb31 MSVC: Workaround crtdbg macroing free().
9462b90067 Merge pull request #1752 from billhollings/function-constants-opquantize
325f107c5b Merge pull request #1745 from billhollings/location-component-vecsize
ec054dad7f MSL: Support synthetic functions in function constants.
dee35bf3ce Merge pull request #1749 from billhollings/fastmath-quantize
ba66a91402 MSL: Use vec<T, n> in template SpvHalfTypeSelector for function spvQuantizeToF16().
a2671e35b0 MSL: Consolidate spvQuantizeToF16() functions into a single template function.
5742047b24 MSL: Honor infinities in OpQuantizeToF16 when compiling using fast-math.
05ac99ae23 Merge pull request #1748 from billhollings/fastmath-nocontraction
fb3defc9ef MSL: Honor DecorationNoContraction when compiling using fast-math.
548a23da34 MSL: Track location component to match vecsize between shader stages.
fe1af2ae72 Merge pull request #1747 from KhronosGroup/ci-fix
d579444a82 Merge pull request #1744 from billhollings/location-attribute-fix
6628e10fc6 Merge pull request #1746 from billhollings/fast-math-per-vulkan
3ca99bbbcc Remove tests for Ubuntu 16.04.
0f12557695 Remove obsolete Travis CI YML.
40141ffddf MSL: Selectively enable fast-math in MSL code to match Vulkan CTS results.
86dfac12c8 MSL: Fix location and component variable matching between shader stages.
b81334a513 Merge pull request #1738 from billhollings/return-value-after-discard-terminator
2a150f5a2f MSL: Add explanatory comment requested in PR review.
35e92e6ffb MSL: Return fragment function value even when last SPIR-V Op is discard (OpKill).
c2500e504d Merge pull request #1735 from billhollings/add-const-op-exprs
472f9d4f6d Add tests for OpSpecConstantOp ops OpQuantizeToF16 and OpSRem.
5fb1ca4f0d Add support for additional ops in OpSpecConstantOp.
51d8e7be94 Merge pull request #1734 from KhronosGroup/buffer-reference-uvec2
b8f1e71907 GLSL: Emit GL_EXT_buffer_reference_uvec2 as required.
d6fe75df10 Merge pull request #1732 from KhronosGroup/fix-1731
23c4480d8e Fix switch fallthrough case in some cases.
0e2880ab99 Merge pull request #1729 from KhronosGroup/fix-1726
2eea6a579b MSL: Consider that function/private variables can be block-like.
840d4483bc Merge pull request #1728 from KhronosGroup/fix-1727
5b0cafb416 Track temporary access for OpArrayLength result.
c062b6b852 Merge pull request #1725 from billhollings/fix-duplicate-glposition
fad1590786 Merge pull request #1722 from billhollings/row-maj-mtx-store-from-const
27e7abeab1 Merge pull request #1724 from billhollings/msl-const-expr-casting
e76fcf9309 MSL: Add test for fixes to MSL constant expression type down-casting.
3105e82b2e MSL: Fix duplicate gl_Position outputs when gl_Position defined but unused.
a75fe07546 MSL: Fix casting in constant expressions with different sizes.
9552ca5473 MSL: Support row-major transpose when storing matrix from constant RHS matrix.
bab4e5911b Merge pull request #1716 from KhronosGroup/terminator-access-fix
cb613eb675 Handle value access in terminators.
1964799fba Merge pull request #1715 from KhronosGroup/precise-fp16-fp64
ac11a91792 GLSL: Emit precise for fp16/fp64 types as well.
cd22336a38 Merge pull request #1712 from cdavis5e/msl-subgroup-ballot-simplify
03ad13bae6 MSL: Simplify spvSubgroupBallot().
18f3cd6810 GLSL: Ensure ray query object decls are flushed if allocated in Function.
e51630595f Merge pull request #1711 from KhronosGroup/fix-1690
5b227cc57c GLSL: Implement GL_EXT_ray_query.
6196e3b029 MSL: Remove redundant path for SampleMask.
2fcbef398c Merge pull request #1709 from billhollings/fix-sample-mask-in
fe08bf4af4 Remove EXPERIMENTAL from JSON reflection backend.
ebb5098def MSL: Adjust gl_SampleMaskIn for sample-shading and/or fixed sample mask.
be3988b13c Merge pull request #1706 from SpaceIm/fix/ios-bundle
a70ce5192e Merge pull request #1708 from KhronosGroup/fix-interpolant-access-chain
71b83a18f4 MSL: Add test for scalar access chain pull interpolant.
d42c0b2e08 Merge pull request #1707 from billhollings/fix-interpolant-access-chain
3e04eee491 MSL: Fix setting SPIRVCrossDecorationInterpolantComponentExpr decoration.
d74eaabde0 fix cross-build to iOS/tvOS/watchOS
1ae2b58f19 Merge pull request #1700 from pkasting/master
bf746bd680 Merge pull request #1699 from KhronosGroup/pervertexnv
7cdab07efe Fix -Wunreachable-code-aggressive.
206ee8f171 GLSL: Support pervertexNV in NV barycentric extension.
c5b8022e61 Merge pull request #1669 from KhronosGroup/1560-reuse1
54882ad16d Add GLSL.std.450.h to REUSE.
3781d49d7c .gitignore ignored new license text
c862f8d22d Actually checkout repo into new reuse job
f2a65545b8 Finish adding SPDX tags and setup a reuse checked in Github Actions CI
2ceca64004 Add missing copyright headers.
853e84e8bf Merge pull request #1698 from KhronosGroup/fix-1691
d6b29ab017 HLSL: Rewrite how block IO is emitted.
9338996f3b Merge pull request #1697 from KhronosGroup/fix-1693
3149095585 Merge pull request #1696 from KhronosGroup/fix-1694
d75666b170 GLSL: Emit num_views for OVR_multiview2.
8216e87f02 Handle SPIR-V 1.4 selection constructs.
9cdeefb5e3 Merge pull request #1692 from Kangz/fix_default_copy_dtor
6a85c695cc Fix IVariant -Wdeprecated-copy-with-dtor
2e1b5fb39e Merge pull request #1686 from KhronosGroup/fix-1684
fa42f1ce34 Merge pull request #1685 from KhronosGroup/fix-1683
449f68ef3b Ensure loop control flow hints only appear above loops.
d62b3c2b92 GLSL: Implement control flow hints.
165dbff228 Handle odd type for textureGather component.
585fc6f3cb MSL: Always enable support for base vertex/index on iOS.
a6ce49ca24 Merge pull request #1680 from xndcn/cc
02fb8f2a24 Add comment after inf/nan float number for clarifying.
ff61890722 Merge pull request #1679 from okuoku/fix-c-sample-code
38c6ef1d56 Fix C sample code in README.md
faec1a8643 Merge pull request #1678 from KhronosGroup/fix-1674
9ea0e8b859 Merge pull request #1677 from KhronosGroup/fix-1673
c87cb54499 MSL: Add CLI option for sampler suffix.
bf3793dd35 MSL: Improve handling of split tessellation access chains.
a6c9514856 Merge pull request #1676 from KhronosGroup/fix-1671
0214990e7c Merge pull request #1675 from KhronosGroup/fix-1670
26a4986009 GLSL: Implement noncoherent framebuffer fetch.
99ae0d32e9 MSL: Handle array with component when we cannot rely on user() attrib.
a64ddcdd49 MSL: Handle array of IO variable with Component decoration.
418542eaef Merge pull request #1668 from KhronosGroup/fix-1665
b8115ffbe0 HLSL: Implement invariant as precise.
e47a30e807 Honor NoContraction qualifier.
0eeaffe048 Merge branch '16-bit-int-types-glsl'
6dbab0df47 Update reference output.
0408c592dd Fixed 16 bit int types
72a2ec4c1b MSL: Fix '--msl-multi-patch-workgroup' out of bounds reads when dispatching more threads than control points (#1662)
995c7981cc Merge pull request #1663 from billhollings/metal-arg-buff-padding-patch
098cdd64f6 MSL: Padding for Metal argument buffers should not double-count SampledImages.
c624d5387c Merge pull request #1660 from KhronosGroup/fix-1658
82a77e534e MSL: Use proper array for quad tess levels.
b38e3b4a47 Merge pull request #1661 from KhronosGroup/fix-1659
0e963c62b6 HLSL: Support Shuffle wave ops.
bbcef69a45 Merge pull request #1657 from KhronosGroup/fix-1607
532f65583e Rewrite how non-uniform qualifiers are handled.
d137abeef5 Merge pull request #1655 from KhronosGroup/fix-1640
8e24e0b224 Merge pull request #1654 from KhronosGroup/fix-1641
71eb1754e3 Merge pull request #1653 from KhronosGroup/fix-1638
2cbc7f0f37 Merge pull request #1652 from KhronosGroup/fix-1644
b084f639cb Merge pull request #1651 from KhronosGroup/fix-1645
c89b5a1a3f GLSL: Support shading rate builtins.
3fd148450a GLSL: Implement gl_FragFullyCoveredNV.
f93a8fb1fe GLSL: Support GL_EXT_shader_image_load_formatted.
90c70e6605 MSL: Handle variable access in OpSelect.
96ba044f01 HLSL: Fix automatic location assignment in block IO.
3cb8e7c223 Merge pull request #1643 from KhronosGroup/fix-1639
ae9ca7d73c MSL: Fix copy of arrays to/from stage IO variables.
986196030d MSL: Don't use native arrays for tess level inputs.
4a379a00f3 MSL: Don't emit native array for masked clip/cull distance.
406af8ff4d c: Add C API for builtin stage IO reflection.
b4a380a04c Support reflecting builtins.
852f2da63c Check SPIR-V 1.4 rules when reflecting resources.
682a227f4b MSL: Make builtin argument type declaration context sensitive.
c1edd35d57 MSL: Use spvUnsafeArray for builtin arrays after all.
7b9a591aa7 MSL: Hoist out to_tesc_invocation_id() in more places.
75ed73818c MSL: Handle loading Clip/CullDistance in TESE.
a159334895 MSL: Correctly analyze if builtin block is active.
cea934c03f MSL: Test that we can capture cull distance to buffer.
5826298697 MSL: Handle CullDistance better.
23da445bd4 MSL: Emit multiple threadgroup slices for multi-patch.
b442500204 MSL: Unroll initializations of CullDistance/ClipDistance control points.
c9946296dd MSL: Fix initialization of masked threadgroup variables.
ee85bb345e Fix print_help comment.
faf80b08fc MSL: Don't report fallback location allocations as being "used".
adc5fe3615 C: Add C api for stage output masking.
5e9c2d060e MSL: Cleanup fallback IO block emission.
e32c474911 MSL: Handle masking of TESC IO block members.
dc54f75eec MSL: Fixup gl_PerVertex names if we're emitting masked builtins.
40f628f49c MSL: Add test for complex control point outputs.
46c48ee6b5 MSL: Rewrite how IO blocks are emitted in multi-patch mode.
425e968720 MSL: Handle flattening of patch block outputs as well.
8e2dbe0d38 MSL: Do not declare patch variables on stack.
ff3f5bcba5 MSL: Handle masking of builtin control points.
6ecdd64a91 MSL: Emit a masked builtin IO block if necessary.
436b1250da MSL: Do not perform scalar fixups for control-point outputs.
22c9b63e78 MSL: Fix argument_decl check for builtin.
c635c35c12 MSL: Temporarily allow empty output struct.
a59e25db18 MSL: Small refactors.
74b2acab9b MSL: Always emit block variable for block types.
ae7bb41ef4 MSL: Test that we can mask location writes in TESC.
3255d6cef0 MSL: Explicitly only consider masked variables to be thread-group-like.
ba93b6518d MSL: Fix masking of vertex block outputs.
a393de31e6 MSL: Refactor out variable/block member masking.
857295a9ab MSL: Add tests for masking with --for-tess.
43b6ea2c9a MSL: Remove position mask tests. They will fail compilation.
e7b37392bf MSL: Emit correct address space for masked arguments.
65b5ff7ece MSL: Don't emit weird reference type for spvUnsafeArray types.
e7824c8b6e MSL: Handle masked outputs in extract_global_variables.
50a6bc058a MSL: Force builtin arrays for builtin array types.
88b54f5dab MSL: Add tests for vertex output masking.
394c038bfd MSL: Do not consider effective storage for any composite.
04988b89b9 MSL: Handle effective storage for masked CP outputs.
f2b5fb3f45 MSL: Emit threadgroup storage class for masked control point outputs.
ea91579a7f MSL: Do not redirect tess access chains on masked outputs.
9c1cadd440 Add --mask-stage-output-* CLI options.
f682e89188 MSL: Correctly emit array type for masked outputs.
2a2d57df13 MSL: Sketch out API to aid LTO-style optimization.
9a144bb2b9 Clean up member sorting.
0997e81118 MSL: Sort builtin IO block members by builtin type.
b4aa6dacfa MSVC: Add /bigobj for debug builds.
45818c14e4 Merge pull request #1648 from billhollings/msl-pad-arg-buff-structs
b3bfe22eaa MSL: Fixes to support padding Metal argument buffer entries based on argument index.
daba0dfba6 MSL: Fixes to support padding Metal argument buffer entries based on argument index.
9060e5a13c MSL: Fixes to support padding Metal argument buffer entries based on argument index.
9866cf4496 MSL: Fixes to support padding Metal argument buffer entries based on argument index.
6c0e11f907 Merge branch 'master' of https://github.com/billhollings/SPIRV-Cross into msl-pad-arg-buff-structs
582749ac68 Merge pull request #1650 from Dredhog/active-builtins-c-api
edde535574 c: Remove SPVC_PUBLIC_API prefix from API implementation
215f31b33f c: Add missing API to query active builtins.
17dab614dc MSL: Support padding Metal argument buffer entries based on argument index.
d2e1e7ba98 Fix Github CI in PRs.
28ae7b8f35 Merge pull request #1642 from mehmetoguzderin/msl-long-ulong-member
e2f7a753d2 Move condition to default block
0a0c9db9be MSL: Support long ulong types in buffers in 2.3+.
84d1f8aa2a Use Github actions CI tag.
2e000a0be4 Add GitHub Actions script.
60aa24566e Merge pull request #1633 from KhronosGroup/fix-1626
ee31e84e30 GLSL: Handle complex load/store scenarios to gl_SampleMask.
fb1f295aaf Merge pull request #1635 from KhronosGroup/fix-1627
5d846acee5 Merge pull request #1634 from KhronosGroup/fix-1625
0ac70fa7ca Merge pull request #1632 from KhronosGroup/fix-1629
4ca06c7278 Handle edge cases in OpCopyMemory.
aea6d29aa8 MSL: Add test for logical subgroup arith ops.
d6c2c1b39a HLSL: Support logical subgroup ops.
5570043af3 GLSL: Add support for Logical subgroup ops.
bc4cb1b3c5 Throw if SPIR-V module has no entry points.
d57ab68a21 Merge pull request #1630 from KhronosGroup/fix-1628
97796e0609 MSL: Deal with pointer-to-pointer qualifier ordering.
621884d709 Merge pull request #1622 from KhronosGroup/fix-1619
da238e5f12 Merge pull request #1623 from phuang/patch-2
c66a571057 Add two missing source files
b1e36a1f78 Merge pull request #1621 from KhronosGroup/fix-1618
85704f70bc MSL: Handle load and store to TessLevel array in TESC.
ce552f4f91 MSL: Gracefully assign automatic input locations to builtin attributes.
aa271c1460 MSL: Refactor out location consumption count computation.
6f1f6775f3 Add comment where aux image atomic buffers are reflected from.
92d379bab4 Merge pull request #1620 from phuang/patch-1
bc3416a18f Fix build errors on Windows
bae17e8204 Merge pull request #1617 from KhronosGroup/fix-1608
5789e3eed9 Merge pull request #1616 from KhronosGroup/fix-1609
daddbd4078 MSL: Fixup type when using tessellation levels in TESC functions.
0ad12a0036 MSL: Always return [[position]] when required.
05a1a07f70 Merge pull request #1615 from KhronosGroup/fix-1612
09dc76f68a c: Add missing IOS_SUPPORT_BASE_VERTEX_INSTANCE option.
8f5ab50fb8 Merge pull request #1614 from KhronosGroup/fix-1610
21a931613e HLSL: Add vector to illegal names list.
4741bbaa64 Merge pull request #1606 from billhollings/position-invariance
8e03cb60a5 Expose position invariance.
84a41cd488 Merge pull request #1603 from KhronosGroup/small-improvements
ea02a0c03a Check entry point variables in is_hidden_variables.
4bedad3860 Handle nonuniformEXT qualifier for acceleration structures.
7ab3f3f74e Deal better with CompositeExtract from constant composite.
66fb0bd9df GLSL: Handle tracing against incoming payload/callable.
9acb9ec31f Merge pull request #1594 from KhronosGroup/fix-1591
a5eaf2f44a Merge pull request #1595 from KhronosGroup/copyright-update
4704482bbc meta: Update copyright headers to 2021.
4c866e4662 Fix pathological complexity explosion for certain shaders.
820179bf46 Merge pull request #1590 from KhronosGroup/fix-1584
2097c30985 GLSL: Support both SPV_KHR_ray_tracing and NV_ray_tracing.
702c903f98 Merge pull request #1589 from KhronosGroup/roll-deps
ce18d1b8a5 CLI: Fix silly regression with handling of -V.
5d82d32e0f Roll dependencies.
0e5078dc0c Merge pull request #1588 from KhronosGroup/fix-1582
893a011299 MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers.
3136e34215 MSL: Always use input_attachment_index for framebuffer fetch binding.
134a520034 Merge pull request #1587 from KhronosGroup/refactor-active-variable-consideration
03ee71e86c Add test for pure initializer gl_FragDepth.
3776d8978c GLSL: Force block declaration if clip/cull is used in tesc.
014b3bc5ea MSL: Make sure initialized output builtins are considered active.
a4a9b53b5b MSL: Always enable Outputs in vertex stages.
fa76d01203 MSL: Only consider builtin variables if they are part of IO interface.
c8837d7d80 MSL: Very slight refactor.
234c65c0f3 Merge pull request #1585 from KhronosGroup/fix-1569
72e9f619a9 Merge pull request #1583 from KhronosGroup/fix-1567
42ec132357 Merge pull request #1581 from KhronosGroup/fix-1554
c033a93951 GLSL: Fix -Wshadow error.
1a28a04333 GLSL: Update SPIR-V headers for modified ray tracing opcodes.
02b7f9cbe9 CLI: Add stdin support.
efed4c9738 MSL: Fix initializer for tess level outputs.
ab9200ffdf MSL: Don't flatten builtin arrays unless they're part of IO interface.
df4f8ef8fe MSL: Emit correct initializer for tessellation control points.
ad3e1584f9 MSL: Handle initializers for tess levels.
39fee93906 GLSL: Refactor out Output variable initialization.
6a3ea0385e GLSL: Add test for initializing tess level output.
175381fe08 GLSL: Handle some extreme edge cases in Output variable initialization.
7b7a21c405 Merge pull request #1578 from KhronosGroup/fix-1568
1a38fec382 Minor redundant nit.
a1c784f002 More robust handling of initialized output builtin variables.
9a304fe931 Handle output IO block initializers more robustly.
49ab12919c Merge pull request #1577 from KhronosGroup/fix-1574
3514c9ff33 Merge pull request #1576 from KhronosGroup/fix-1571
3a85d1c80c CMake: Disable compiler extensions explicitly.
ddb3c65648 Handle reserved identifiers for functions.
c4ff129fe3 MSL: Handle reserved identifiers for entry point.
e50f7d1ce8 Merge pull request #1566 from KhronosGroup/subgroup-table-fix
c8765a75f2 GLSL: Fix KHR subgroup extension table for subgroups.
762c3082ae Merge pull request #1564 from KhronosGroup/fix-1558
1eb42eb18c Merge pull request #1563 from KhronosGroup/fix-1559
a11c4780d0 GLSL: Emit nonuniformEXT in correct place for late-combined samplers.
dc940846d7 GLSL/HLSL: Disallow VariablePointers capability outright.
6d10da0224 Merge pull request #1553 from comex/no-subgroups-in-vertex-shaders
f41b59b36e Merge pull request #1557 from KhronosGroup/mit-dual-license-api
cf1e9e0643 Add MIT dual license for the SPIRV-Cross API.
0b79db773f Merge branch 'master' of git://github.com/js6i/SPIRV-Cross
c09a65c12d MSL: Added fmin3 and fmax3 library functions to the illegal name list.
5a85fa9400 msl: Don't try to use [[thread_index_in_simdgroup]] in vertex shaders.
be527632a6 Merge branch 'unused' of git://github.com/comex/SPIRV-Cross
c80cbde7aa spirv_msl: Don't add fixup hooks for builtin variables if they're unused.
3d16060c32 Merge pull request #1551 from cdavis5e/msl-subgroup-inactive-ballot-mask
1e67b21ee9 MSL: Don't mask off inactive bits in ballot masks.
1f178be3c9 Merge branch 'msl-sample-rate-position' of git://github.com/cdavis5e/SPIRV-Cross
fd738e3387 MSL: Adjust FragCoord for sample-rate shading.
782916a797 Merge pull request #1549 from KhronosGroup/various-fixes
e07f0a9df5 GLSL: Fix buffer_reference with aliased names.
c5826b4b69 GLSL: Emit storage qualifiers for buffer_reference.
650b5e1b12 HLSL: Fix validation with FXC for test.
6a614cc7f7 Normalize all internal workaround methods to use spv prefix.
35d3b9c3e7 Merge branch 'msl-subgroup-ops-2' of git://github.com/cdavis5e/SPIRV-Cross
dabdf4eff6 Merge pull request #1547 from scribam/cmake-minimum-required
1eb4852856 CMake: Set minimum required version to 3.0
68908355a9 MSL: Expand subgroup support.
58291963c6 Merge branch 'glsl-vertex-attrib-64bit' of git://github.com/rdb/SPIRV-Cross
df5e3730ca GLSL: Require GL_ARB_vertex_attrib_64bit for double input in pre-4.10
b3c59263a0 Merge pull request #1541 from cdavis5e/msl-ios-features
88e25e60ec MSL: Expose some more features on iOS.
1ee2d13873 MSL: Add missing reference file.
ef0256c23e Fix switch fallthrough
0d6fad4ab9 Merge branch 'extract_subgroup_ops' of git://github.com/js6i/SPIRV-Cross
9c2c0a23b9 Merge pull request #1533 from rdb/texture-fetch-size-fallbacks
10fa5f62aa GLSL: Legacy / extension fallbacks for textureSize and texelFetch
f0239bce05 MSL: extract global variables from subgroup ballot operations
6fc2a0581a Run format_all.sh.
71fcf0d9e6 Update texture gather test result.
008f3baad7 Merge branch 'arb-texture-gather' of git://github.com/rdb/SPIRV-Cross
46bf1e99d6 Merge pull request #1525 from cdavis5e/msl-interpolation-functions
509908d8db GLSL: Add error checking and extension fallback for textureGather
683c3f5c3f Merge pull request #1530 from rdb/legacy-glsl-round
ea334c14bc Merge pull request #1527 from rdb/legacy-transpose
2417010046 Merge pull request #1528 from rdb/fix-legacy-vertex-shader-lod
1648747fa7 Merge pull request #1529 from KhronosGroup/fix-msl-gather-regression
b3bd674aa7 GLSL: Remove unused `lod` argument from legacy_tex_op()
bf71994dae GLSL: implement transpose() in GLSL 1.10 / ES 1.00
9e6e5d2738 GLSL: Fix round/roundEven for legacy GLSL.
e8c500ceef GLSL: Fix support for textureLod in legacy vertex shaders
db13762297 MSL: Fix regression in image gather handling.
aca9b6879a MSL: Support pull-model interpolation on MSL 2.3+.
a20c768698 Merge pull request #1524 from rdb/hlsl-round-even
854f566869 HLSL: Support roundEven() in HLSL SM 4.0 and above
2e1bdeb212 Merge pull request #1520 from rdb/dx9-dref-samplers
135933d59e HLSL: Add regression test for SM3.0 texture samplers
18893ba3b9 HLSL: Support depth comparison texture sampling in SM 2/3.
fc644b50e6 Merge pull request #1523 from KhronosGroup/fix-1512
512e851185 Merge pull request #1522 from KhronosGroup/fix-1510
b3344174f7 HLSL: Add option to flatten matrix vertex input semantics.
1f018b0fb8 Parser: Don't assume OpTypePointer will always take a SPIRType.
244839d350 Merge pull request #1516 from billhollings/VK_EXT_descriptor_indexing
4bdd49df3f Syntax and format updates from code review.
c5a3f37a1c Merge pull request #1519 from cdavis5e/msl-mac-comparison-bias-grad
dcd66c283c Merge pull request #1521 from devshgraphicsprogramming/master
6402586015 Updated ref file for subgroups_basicvoteballot.vk.comp
9a1af25f02 Merge pull request #2 from KhronosGroup/master
6c5f394b09 Fix some bad assumptions about emulating `subgroupBarrier`
7f67abe0fe Minor format and typo updates from code review.
547c29f7bb MSL: Allow Bias and Grad arguments with comparison on Mac in MSL 2.3.
8884b34940 Merge pull request #1517 from atyuwen/master
303f813166 Merge pull request #1518 from KhronosGroup/fix-nonuniform-bracket-handling
439b666829 GLSL: Fix nonuniformEXT injection.
871a023877 fixed compile error with -std=c++20
541a801fed Merge pull request #1514 from cdavis5e/msl-mac-framebuffer-fetch
c8a43876c7 added metal keyworld: "level" (#1501)
b7b0e804e5 MSL: Support run-time sized image and sampler arrays (GL_EXT_nonuniform_qualifier/SPV_EXT_descriptor_indexing).
c20d5945a2 MSL: Allow framebuffer fetch on Mac in MSL 2.3.
78c6d2d628 Merge pull request #1509 from cdavis5e/mac-post-depth-coverage
08e49bfd67 Merge pull request #1508 from KhronosGroup/fix-1507
346b0b6c21 Merge pull request #1493 from KhronosGroup/ubo-row-major-load-workaround
d48d2a95c7 MSL: Allow post-depth coverage on Mac in MSL 2.3.
542d460364 Handle case where block is loop header, continue AND break block.
e47561a28b GLSL: Support a workaround for loading row-major matrices.
5ae9153a78 Merge pull request #1505 from cdavis5e/msl-vertex-writes
1b6b9705e6 MSL: For 2.1+, don't disable rasterization for vertex writes.
1a95017d11 Merge pull request #1503 from KhronosGroup/travis-python-update
b3a74f3a22 Merge pull request #1504 from KhronosGroup/fix-1502
f65f259ab7 MSL: Do not use component::x gather for depth2d textures.
1d68cbfb1b Update TravisCI python reference.
dd35821f2f Merge pull request #1499 from cdavis5e/subgroup-fixes
1264e2705e MSL: Cast broadcast booleans to ushort.
065b5bda3c MSL: Mask ballots passed to Ballot bit ops.
781367d083 MSL: Support vectors with OpGroupNonUniformAllEqual.
6ccb902462 MSL: Correct definitions of subgroup ballot mask variables.
a57b4b1b2e Merge pull request #1498 from cdavis5e/msl-swizzle-arrayed-nonconstant
064ed448b9 MSL: Don't remove periods from swizzle buffer index exprs.
7b80307a7d Merge pull request #1495 from cdavis5e/1d-2d-offset-grad
5845e009ea MSL: Handle Offset and Grad operands for 1D-as-2D textures.
0db1569e97 Merge pull request #1492 from KhronosGroup/non-native-matrix-fix
9c220a8247 Merge pull request #1490 from KhronosGroup/fix-1488
23a0cfc842 Merge pull request #1494 from cdavis5e/msl-tesc-tess-level-cast
3e6010d8c5 MSL: Don't use a bitcast for tessellation levels in tesc shaders.
120af42616 GLSL: Use need_transpose when checking for non-native matrix.
bd1ee4344e MSL: Support querying and modifying generated combined sampler suffix.
7332b44c3c Merge pull request #1489 from cdavis5e/msl-fix-atomic-image-coord
21d38f74ce MSL: Fix calculation of atomic image buffer address.
e827a06984 Merge pull request #1487 from cdavis5e/msl-atomic-image-interlock
7a5d0d6b29 MSL: Add missing interlock handling to atomic image buffers.
fab6ad234e Merge pull request #1486 from cdavis5e/atomic-image-argument-buffer
cc7aabce72 Merge pull request #1485 from cdavis5e/msl23-demote-to-helper
9cafea6cf8 MSL: Support atomic access to images from argument buffers.
2219c4a392 MSL: Support SPV_EXT_demote_to_helper_invocation for MSL 2.3.
401af49326 Merge pull request #1482 from KhronosGroup/gl-subgroup-merge
5619329665 Style nits for GL subgroup implementation.
a6f6547cf1 Add missing VK variant of the test file.
28994a3186 Update GL subgroup test file.
819c599ecd Merge branch 'issues1350-2' of git://github.com/devshgraphicsprogramming/SPIRV-Cross into master
db52e277b9 Resolved issues 1350, 1351, 1352
5cc2e4f634 Merge pull request #1475 from KhronosGroup/fix-1474
e0c9aad934 GLSL: Add support for transform_feedback3 geometry streams.
7a99d1cb72 GLSL: Use literal array size for cull/clip array sizes.
e6f5ce6b89 Merge pull request #1471 from KhronosGroup/fix-1467
6254be910e Merge pull request #1470 from KhronosGroup/fix-1469
34a6a45fba Work around MSVC warning.
5ea576ece2 Allow flip_vert_y in all relevant stages.
ea3cd74426 Merge pull request #1468 from dj2/roll-09-22
9880b05572 Roll dependencies.
8891bd3512 Merge pull request #1466 from KhronosGroup/fix-1465
2144274a91 Clean up conditional branch codegen.
54cc0b01f6 Deal with case where a selection construct conditionally merges/breaks.
16d9fea77c Merge pull request #1463 from KhronosGroup/fix-1462
66afe8c499 Implement a simple evaluator of specialization constants.
bdbef7b1f3 Merge pull request #1461 from Kangz/fix-warnings
bcd71536e2 Fix -Wduplicate-enum and -Wrange-for-analysis.
ba2d0e17d3 Merge pull request #1460 from KhronosGroup/fix-1458
446596643a Roll glslang/SPIRV-Tools deps.
18d03b3ea6 Handle OpUndef %void.
bad9dab8df Merge pull request #1457 from cdavis5e/msl-layered-subpass-data
4cf840ee7b MSL: Support layered input attachments.
c7507e39d4 Merge pull request #1456 from KhronosGroup/fix-1455
3360daa6f3 MSL: Fix OpCompositeInsert and OpVectorInsertDynamic.
9e3dbdc8d6 Merge pull request #1454 from cdavis5e/msl-multiview-non-layered
cab7335e64 MSL: Don't set the layer for multiview if the device doesn't support it.
4752a44f9e Merge pull request #1453 from cdavis5e/msl-multiview-base-instance
53080ecca8 MSL: Fix multiview view index calculation with a non-zero base instance.
685f86471e Merge pull request #1452 from KhronosGroup/minor-nits
95993f78af Run format_all.sh.
ee1b4e7042 Work around annoying warning on GCC 10.2.
eec76b04c7 Merge pull request #1450 from KhronosGroup/fix-1440
a07441568e Overhaul how we deal with reserved identifiers.
f0fe4442e3 Merge pull request #1448 from KhronosGroup/fix-1437
4f0f0e5a07 Merge pull request #1449 from KhronosGroup/fix-1443
fdbc80d131 HLSL: Fix FragCoord.w.
fad36a6b28 HLSL: Deal with partially filled 16-byte word in cbuffers.
dd1f53ff15 HLSL: Fix bug in is_packing_standard for cbuffer.
4c7944bb42 Merge pull request #1446 from kakashidinho/master
ab8eb70af1 Fix #1445: MSL: Enclose args when convert distance(a,b) to abs(a-b)
82d1c43e40 Merge pull request #1441 from cdavis5e/msl-tesc-composite-out
3347b1076d MSL: Fix handling of matrices and structs in the output control point array.
c333445ada Merge pull request #1436 from KhronosGroup/fix-1408
8a1843ab20 Add some test cases for complex type aliasing scenario.
eb580d6656 Ensure that we use primary alias type when emitting flattened members.
aac6885950 GLSL: Be more aggressive about using type_alias.
038b0bf238 Only rewrite type aliases for the base type.
7778792aec Merge pull request #1434 from KhronosGroup/glsl-force-flattened-io
57c93d44ac GLSL: Add option to force flattening IO blocks.
f5e9f4a172 Merge pull request #1432 from ponitka/hlsl-sample-mask
ba58f78395 Adding BuiltInSampleMask in HLSL
0376576d2d Merge pull request #1429 from ponitka/master
18f23c47d9 Enabling setting a fixed sampleMask in Metal fragment shaders.
934825a6a2 Merge pull request #1294 from cdavis5e/msl-multi-patch-workgroup
688c5fcbda MSL: Add support for processing more than one patch per workgroup.
3dcc23a5b3 Merge pull request #1431 from dj2/roll-07-22
ac08a89cf0 Merge pull request #1430 from cdavis5e/msl-refactoring
c4f3d4ae29 Roll GLSLang, SPIRV-Headers and SPIRV-Tools.
884bc6df65 MSL: Factor creating a uint type into its own method.
5e13f7fdf2 MSL: Factor a really gnarly condition into its own method.
6575e451f5 Merge pull request #1423 from KhronosGroup/msvc-2013-fix
36c999ae3f MSVC 2013: Fix silently broken builds.
39ce5b46de Merge pull request #1421 from troughton/patch-3
b74a84e4cb MSL: Ensure OpStore source operands are marked for inclusion in function arguments
559b21c6c9 Merge pull request #1420 from dj2/roll-07-06
63fbdaca93 Roll deps.
3b366db7f1 Merge pull request #1416 from KhronosGroup/fix-1415
711300baed MSL: Do not emit swizzled writes in packing fixups.
fa5b206d97 MSL: Workaround broken vector -> scalar access chain in MSL.
fab75792a9 Merge pull request #1419 from KhronosGroup/msl-input-attachment-index-fallback
e1600d4df8 MSL: Use input attachment index directly for resource index fallback.
c465cd5004 Merge pull request #1417 from KhronosGroup/fix-351
2ac8f51b06 GLSL: Support I/O flattening with arrays as final type.
2d43103a55 GLSL: Support multi-level struct flattening for I/O.
d573a95a9c Run format_all.sh.
8f716947c2 test: Use --hlsl-dx9-compatible when attempting to compile SM 3.0 shaders.
2894b40868 Merge pull request #1412 from KhronosGroup/fix-1411
70f17142de GLSL: Fix nested legacy switch workarounds.
b1082c10af Merge pull request #1410 from KhronosGroup/fix-1406
42096ca4a1 Merge pull request #1409 from KhronosGroup/fix-1405
4d79d634f5 GLSL: Implement switch on ESSL 1.0.
bae76d7915 GLSL: Use for-loop fallback instead of do/while for legacy ESSL.
3afbfdb090 Implement context-sensitive expression read tracking.
05188aca69 Fix bug with control dependent expression tracking.
2e7a562583 Merge pull request #1404 from KhronosGroup/fix-1402
eb0f0323d3 HLSL: Workaround FXC bugs with degenerate switch blocks.
f9ae06512e Merge pull request #1401 from dj2/roll-deps-22
9eb615c63b Merge pull request #1400 from KhronosGroup/fix-1399
0abc017501 Roll deps and update tests.
f9da366ae6 MSL: Remove the old VertexAttr API.
7edaea87cf Merge pull request #1398 from Kangz/fix-deprecation
6add77aa97 Merge pull request #1397 from KhronosGroup/fix-1396
8aee532f56 Fix placement of SPIRV_CROSS_DEPRECATED.
f141521ebe Fix duplicated initialization for loop variables with initializers.
d7976b7b24 Merge pull request #1395 from KhronosGroup/fix-1394
ace4d25222 MSL: Add test case for constructing struct with non-value-type array.
7314f51a32 MSL: Deal with loading non-value-type arrays.
02db4c1f16 MSL: Add tests for array copies in and out of buffers.
03d4bcea68 MSL: Improve handling of array types in buffer objects.
11832b6e14 Clean up some deprecation warnings when building with Makefile.
5e509b159a Remove unused member in MSLShaderInput.
a64484f62b Merge pull request #1392 from cdavis5e/msl-frag-input-vecsize
5281d9997e MSL: Fix up input variables' vector lengths in all stages.
7073ed2edb Merge pull request #1393 from KhronosGroup/fix-1391
d13dc0ce47 HLSL: Fix texProj in legacy HLSL.
9e3df69d4e Merge pull request #1390 from rdb/master
031cbaa5a2 GLSL: Require GL_ARB_draw_instanced for gl_InstanceID in GLSL < 1.40
92fcd7d2b0 Merge pull request #1389 from KhronosGroup/sparse-clamp
f383cc98f2 GLSL: Handle the rest of GL_ARB_sparse_texture_clamp.
bbefea2b02 Merge pull request #1388 from KhronosGroup/uint-sparse-residency-query
857e1c445c GLSL: Support uint code for sparse residency query.
553a7f959b Merge pull request #1385 from KhronosGroup/fix-1237
cbe0cca73b Refactor texture fetch function generation.
b73c047faf Merge pull request #1387 from Lichtso/master
1f5875e23e Fix missing switch cases in Y'CbCr conversion
3ce81c0025 Merge pull request #1384 from KhronosGroup/fix-1380
757c10bbe4 Merge pull request #1383 from KhronosGroup/fix-1381
275974e062 GLSL: Implement sparse feedback.
6600793884 MSL: Remove obsolete MSLVertexAttr members.
2d5200650a HLSL: Add native support for 16-bit types.
d385bf096f Merge pull request #1378 from bbernhar/issue_410
32bead81c8 Prefer set/binding API
999a7b5256 Merge pull request #1379 from KhronosGroup/fix-1377
165392a2b0 Document all CLI options.
d31bc0247e Do not mask writes to remapped variables in all cases.
17bccc9f7e HLSL: Add option to treat certain SSBO bindings as UAV, even with readonly.
61cddd6307 Merge pull request #1376 from KhronosGroup/fix-1374
58dad82fcb Handle physical pointers in reflection API.
f992548434 Merge pull request #1372 from KhronosGroup/gl-draw-parameters
ef247e75ec GLSL: Improve support for GL_ARB_shader_draw_parameters in desktop GLSL.
ec558bc98e Merge pull request #1371 from dj2/roll-deps-21
3d01d1bf50 Roll SPIRV-Tools, SPIRV-Headers and GLSLang.
287e93ff80 Merge pull request #1370 from dj2/roll_deps_20
29ad40e93e Merge pull request #1369 from KhronosGroup/more-rt-tests
8bf916f575 Roll dependencies
b4dd0b6fb1 GLSL: Add more test shaders for hit attribute types.
66ec3e3e54 GLSL: Support ray payloads and hit attributes declared as Block.
271ad33380 GLSL: Add some more focused RT test shaders.
3c43f055df Merge pull request #1366 from KhronosGroup/fix-1365
f3a362b1aa HLSL: Implement image queries for UAV images.
d638d2df9c Merge pull request #1363 from KhronosGroup/rt-gl-instance-id
86380acf4d Support gl_InstanceID in RT shaders.
b7823ec389 Merge pull request #1361 from KhronosGroup/msl-single-element-array-refinement
107ab7c2b7 MSL: Avoid packed arrays in more cases.
de3698f0e0 Add missing reference files from PR merge.
b8ba89a1ac Merge branch 'master' of git://github.com/kakashidinho/SPIRV-Cross
9ddfe6db6d Fix #1359: MSL: If the packed type is scalar, don't emit "pack_" prefix.
92f7d36c72 Merge pull request #1356 from KhronosGroup/fix-1354
0ebb88cc39 MSL: Redirect member indices when buffer has been sorted by Offset.
137dbeb7f1 Merge pull request #1355 from Kangz/fix-microsoft-enum-value
a3a590a82e Fix -Wmicrosoft-enum-value
7e0295abf8 Merge pull request #1353 from zoddicus/updateSPIRVHeaders
76658247ac Update SPIR-V Headers to 1.5 rev 3
471990d4dc Merge pull request #1349 from KhronosGroup/fix-1348
35a9b793d6 Work around odd deadlock in test_shaders.py in --parallel mode.
d7d630a0b7 Merge pull request #1347 from KhronosGroup/fix-1343
4330b046be Merge pull request #1346 from KhronosGroup/fix-1340
9b7140e2ba Implement OpAtomicLoad/OpAtomicStore.
cbaaa02af9 Merge pull request #1345 from apayen/master
6ef47d6657 MSL: Fix case where subpassInput is passed to leaf functions.
4edfe96739 Fixed recursion in combined_decoration_for_member Members in nested structs were not properly iterated on, and as a result, flags like row major for matrices could be not propagated properly.
7ba0f8f087 Merge pull request #1342 from dj2/roll
171c646474 Roll GLSLang, SPIRV-Tools and SPIRV-Headers.
1ad1662a2b Merge pull request #1339 from KhronosGroup/fix-1338
5e5d1c27ce GLSL: Support f16x2 <-> f32 bitcast.
c58839bfd4 Merge pull request #1336 from KhronosGroup/fix-1333
bf289c37a2 Merge pull request #1337 from KhronosGroup/nonuniform-propagation-fix
bdb343ea06 Be a bit more careful what nonuniform state is propagated.
6b0e558169 Handle RayQueryKHR type.
78b4d9379b Update SPIR-V headers.
b2e934b53f Merge pull request #1328 from devshgraphicsprogramming/patch-1
5cb0f0a640 Merge pull request #1335 from KhronosGroup/fix-1325
127224d816 Fix issue #1327
58548e25a2 Merge pull request #1334 from KhronosGroup/fix-1332
7b9cba7424 HLSL: Add parens in unpackUint2x32 for clarity.
e4e4791c4e HLSL: Only allow 64-bit integers in SM 6.0.
a396744f89 Ensure unpack/pack2x32 tests are compatible with test suite.
55dfbead2f GLSL/HLSL: Support packUint2x32 and unpackUint2x32
f8592ecdfc MSL: Deal correctly with initializers on Private variables.
3fb86e4385 Merge pull request #1331 from KhronosGroup/fix-1321
17ad62eea4 MSL: Support edge case with DX layout in scalar block layout.
f38cbeb814 Merge pull request #1330 from KhronosGroup/fix-1320
ebf463674d MSL: Allow removing clip distance user varyings.
aa5fbc004b Merge pull request #1329 from godlikepanos/master
b3109b8ad0 Reflection: Add specialization constant name
90198199df Merge pull request #1324 from cdavis5e/msl-disabled-builtin-names
96f7008aa8 MSL: Force disabled fragment builtins to have the right name.
fbc560782c Merge pull request #1323 from cdavis5e/msl-disable-frag-only
495e48de44 MSL: Only disable output variables in fragment shaders.
54658d6255 Merge pull request #1319 from cdavis5e/msl-frag-outputs
b29f83c383 MSL: Add options to control emission of fragment outputs.
fcbc590937 Merge pull request #1316 from Malacath-92/master
4560ee24fd Improve compatibility with clang-cl
a1d9b474b5 Merge pull request #1314 from KhronosGroup/fix-1313
c7b75a8fe6 MSL: Do not use base expression with PhysicalTypeID OpCompositeExtract.
6637610b16 Merge pull request #1309 from KhronosGroup/fix-1305
941cceedb4 Expose a query if samplers or images are comparison resources.
b691b7d1e3 Do not add NonWritable/NonReadable decorations for regular images.
14f24d71ab Merge pull request #1308 from KhronosGroup/fix-1306
cfcd84319b Merge pull request #1310 from KhronosGroup/msl-force-declare-implicit-builtins
d9d3359ffb MSL: Deal with cases where builtin is implicitly needed, declared, but unused.
01cee74b02 Merge pull request #1307 from troughton/patch-1
28bf9057df HLSL: Add support for treating NonWritable UAV texture as SRV instead.
4cf736d753 MSL: mark BuiltInFragCoord as implicitly used for subpass reads
e58e8d5dbe Merge pull request #1303 from KhronosGroup/fix-1302
3cb6aeb480 MSL: Fix access chain for deep struct hierarchy on array of buffers.
84ec99c531 Merge pull request #1301 from dj2/roll_deps
32307df73a Roll GLSLang, SPIRV-Tools and SPIRV-Headers
9b3c5e12be Merge pull request #1299 from KhronosGroup/fix-1298
b8905bbd95 Add support for forcefully zero-initialized variables.
871c85d7f0 Merge pull request #1297 from KhronosGroup/fix-1295
04e877df12 GLSL: Implement GL_EXT_shader_framebuffer_fetch.
c2655ab291 Run format_all.sh.
c3d216c011 Merge pull request #1296 from KhronosGroup/fix-1292
05004a57ea GLSL/HLSL: Fix nonuniform qualifier for SSBO atomics.
a3d3c80dd7 GLSL/HLSL: Implement nonuniform qualifier for image atomics.
65aa0c35d6 include/spirv_cross: Fix typo.
7d42fd7f7b Merge pull request #1290 from KhronosGroup/fix-1289
185551bfaf HLSL: Do not emit globallycoherent for SRV ByteAddressBuffer.
d19f30a90e Merge pull request #1287 from KhronosGroup/read-write-decoration-tweaks
95cd20f1c7 Add test for disable-storage-image-qualifier-deduction.
c27e1efbf1 HLSL: Add option to always treat SSBO as UAV, even with readonly.
01968c4486 Add option to disable storage image qualifier deduction.
3ebc83da46 Remove old hack which forces NonWritable/NonReadable.
9deb6ffbba Merge pull request #1285 from KhronosGroup/vulkan-semantics-shorthand
3f2de0d5d3 Add -V alias for --vulkan-semantics.
c5f7b55756 Merge pull request #1284 from KhronosGroup/fix-1282
16796e92be MSL: Add C API for force native arrays.
d91e134500 MSL: Add native array test for composite array initialization.
30343f3e95 MSL: Reintroduce workaround for constant arrays being passed by value.
20b28f72fa MSL: Reinstate workaround for returning arrays.
c9d4f9cd74 MSL: Add a workaround path to force native arrays for everything.
f19fdb94d7 Merge pull request #1283 from dj2/roll
7ec16b64c8 Roll GLSLang, SPIRV-Tools and SPIRV-Headers
dffd33dd9d Merge pull request #1280 from KhronosGroup/fix-1278
92a4294c57 Reject SPIR-V modules with garbage ID bound.
c53b34765d Merge pull request #1277 from KhronosGroup/fix-1276
e81c1b1d98 HLSL: Declare undef variables as static.
7ac5c38838 Merge pull request #1275 from KhronosGroup/fix-1274
cec0502ba5 Remove old memory_scope flag from iOS barriers.
6b2add8e2c Merge pull request #1272 from KhronosGroup/fix-1271
6f5cb00148 Use GNUInstallDirs for include path as well.
cb0aca91ef Merge pull request #1273 from orbea/cmake
8b90526911 cmake: Don't hardcode the pkg-config file.
74544caa16 cmake: Use GNUInstallDirs.
d67c3393da CMake: Avoid warning when parent project uses VERSION in project().
68bf0f824c Merge pull request #1270 from KhronosGroup/fix-1266
dfffbb1cf3 Compile fix on older compilers.
655312cb47 GLSL: Support GL_ARB_enchanced_layouts for XFB.
306cb31bad Merge pull request #1239 from cdavis5e/msl-inline-uniform-blocks
ae6c05f6f4 MSL: Move inline uniform blocks to the end of the argument buffer.
fedbc35315 MSL: Support inline uniform blocks in argument buffers.
f9376058ce Merge pull request #1269 from KhronosGroup/fix-1267
8bbb5fb763 Make SmallVector noexcept.
883de24f79 Merge pull request #1268 from barath121/patch-1
eac76d9473 Typo at line 324
f9818f0804 Update license headers to 2020.
7a411258af Run format_all.sh.
af787a8a79 Merge pull request #1264 from KhronosGroup/msl-argument-buffer-persist
4054d650cf Merge pull request #1263 from KhronosGroup/fix-1232
c3bd136df1 MSL: Add support for force-activating IAB resources.
f79c1e2fed Deal with illegal names in types as well.
79700d5412 Merge pull request #1262 from KhronosGroup/json-reflection-improvements
57b70225ef Merge pull request #1261 from KhronosGroup/fix-379
762c87a7bb Reflection: Add array stride/matrix stride reflection.
18e24c3ca2 Reflection: Emit reflection information for array size literalness.
55fe6050fe GLSL: Implement geometry shader passthrough extension.
172e39f039 Merge pull request #1257 from KhronosGroup/fix-1236
74107a04d1 Merge pull request #1256 from KhronosGroup/fix-1252
cc153f8d7f HLSL: Add a resource remapping API similar to MSL.
2bbb012e9c MSL: Deal with sign on wave min/max.
88ddeec49a HLSL: Deal with casting for WaveActiveMin/Max.
5253da9e63 GLSL: Deal with sign in subgroup Min/Max operations.
34ba8ea4f2 Merge pull request #1255 from KhronosGroup/fix-1254
c256525c7b Run format_all.sh.
1cbd71b354 HLSL: Fix bug when reading and writing structs from SSBO.
151ff1e870 HLSL: Implement stores for complex composites in ByteAddressBuffers.
ca9398c122 HLSL: Su…

* Build fix with new SPIRV-Cross

* WiiU build fix with new SPIRV-Cross
2023-01-15 09:01:06 +01:00
sonninnos b8bcce98c3 (WIN32) Restore zero key event characters (#14848) 2023-01-15 09:00:47 +01:00
Ryunam 46e6ac2093 Add Run-Ahead data to on-screen statistics (#14838) 2023-01-15 09:00:15 +01:00
github-actions d33c2ff56e Fetch translations from Crowdin 2023-01-15 00:12:18 +00:00
sonninnos 3e599d04d3 (WIN32) Add support for mouse button swap (#14846) 2023-01-14 21:33:26 +01:00
sonninnos 639d367773 (WIN32) Fix keyboard event characters (#14844) 2023-01-14 06:46:24 +01:00
github-actions 2ae8a34cfb Fetch translations from Crowdin 2023-01-14 00:11:52 +00:00
reallibretroadmin 3b6aef23e1 Silence 'value stored to variable is never read' warning 2023-01-13 16:18:20 +01:00
sonninnos 2f1a03523b Hotkey blocking correction (#14831) 2023-01-13 04:56:14 +01:00
Bobby Smith 06c3cd80aa Fix subsystems sublabels (#14843) 2023-01-13 04:48:02 +01:00
github-actions 52f34ee78f Fetch translations from Crowdin 2023-01-13 00:12:02 +00:00
github-actions 2a4a266a4a Fetch translations from Crowdin 2023-01-12 00:12:26 +00:00
libretroadmin f0c8008bda Split up runahead into its own file(s) - runahead.c/runahead.h -
by Dwedit's request
2023-01-11 10:19:56 +01:00
neil4 ee6aa753c3 Fix Preemptive Frames #ifdefs (#14834) 2023-01-11 03:21:24 +01:00
github-actions cf4350178b Fetch translations from Crowdin 2023-01-11 00:12:25 +00:00
UltraHDR 10c337255e Set LSApplicationCategoryType to games (#14833)
* Set LSApplicationCategoryType to games

* Set LSApplicationCategoryType to games
2023-01-10 14:02:54 +01:00
neil4 7213aada8d Add Preemptive Frames to Latency Settings (#14832) 2023-01-10 07:22:14 +01:00
github-actions 975300a320 Fetch translations from Crowdin 2023-01-10 00:12:25 +00:00
libretroadmin e10361ed52 Header include cleanups for driver.h 2023-01-09 15:28:15 +01:00
sonninnos 55aeba2f57 Savestate thumbnail aspect ratio fallback (#14828) 2023-01-09 04:13:11 +01:00
libretroadmin 1ab6028b00 Combine driver.c into retroarch.c 2023-01-09 03:20:25 +01:00
libretroadmin ef0672f80b (playlist.c) Cleanups 2023-01-09 02:58:52 +01:00
reallibretroadmin 3ae8e35d0e (iOS) Buildfix and cleanup some unused variables 2023-01-09 01:54:45 +01:00
github-actions f0656f10de Fetch translations from Crowdin 2023-01-09 00:12:37 +00:00
libretroadmin daa9e352cc Remove asserts 2023-01-09 00:51:05 +01:00
reallibretroadmin 84b0546965 Silence some implicit conversion warnings in Xcode 2023-01-09 00:16:36 +01:00
reallibretroadmin a34598512e (Auto frame delay) silence some warnings that pop up in Xcode 2023-01-09 00:05:21 +01:00
libretroadmin 5d065e7efc Buildfix 2023-01-08 20:00:51 +01:00
libretroadmin 71019e1121 Remove or move structs never used 2023-01-08 19:50:03 +01:00
zoltanvb 6412a1d1a1 msg_hash_us.c to Crowdin, phase 2 (with Android fix) (#14825)
* msg_hash_us.c contents to Crowdin, phase 2

Remaining part of the fixed strings moved to msg_hash_us.h, and some other changes:
- added help text for individual menu drivers
- prepared help labels for video drivers
- prepared help labels for input drivers
- old entries from the now defunct help menu are hidden from compilation
  (may be added back later, when the menu is again visible)
- moved notification color/bgcolor items to sublabels
- language fixes from phase 1 comments

* c89 compilation fixes

* Compilation fix for Android builds
2023-01-08 19:33:04 +01:00
gouchi ec2805a562 Report error when core download failed (#14824)
Fix curly bracket opening
2023-01-08 19:32:47 +01:00
libretroadmin af9f946019 (gfx/drivers) Cleanups 2023-01-08 19:22:48 +01:00
libretroadmin 490fb75905 (drivers_display) Cleanups 2023-01-08 18:31:04 +01:00
libretroadmin ccfad9dc9d Revert "msg_hash_us.c contents to Crowdin, phase 2 (#14821)"
This reverts commit f550576147.
2023-01-08 17:47:11 +01:00
zoltanvb f550576147 msg_hash_us.c contents to Crowdin, phase 2 (#14821)
* msg_hash_us.c contents to Crowdin, phase 2

Remaining part of the fixed strings moved to msg_hash_us.h, and some other changes:
- added help text for individual menu drivers
- prepared help labels for video drivers
- prepared help labels for input drivers
- old entries from the now defunct help menu are hidden from compilation
  (may be added back later, when the menu is again visible)
- moved notification color/bgcolor items to sublabels
- language fixes from phase 1 comments
2023-01-08 10:58:26 +01:00
libretroadmin 8a3686df58 Revert "Header cleanups - don't include retroarch.h everywhere"
This reverts commit 0e3b478f8c.
2023-01-08 09:05:46 +01:00
libretroadmin 0e3b478f8c Header cleanups - don't include retroarch.h everywhere 2023-01-08 08:56:57 +01:00
reallibretroadmin 074f19ca90 (Metal) Cleanups 2023-01-08 05:48:06 +01:00
reallibretroadmin 29f165026a (Metal) Small cleanups 2023-01-08 05:34:05 +01:00
esoptron 2b0c86f1f5 Update AUTHORS.h
- Changing my alias to my original one
- Added my real name
- If you want proof that this is me, just look at this previous commit https://github.com/libretro/RetroArch/commit/de8ee0e8d1da947d0a4840b65c4c5e1e85a55288
2023-01-08 03:39:53 +01:00
libretroadmin 1d18e7e7c8 (Metal) Small updates; no code changes 2023-01-08 02:22:46 +01:00
libretroadmin 4e3d73ff49 (Metal) Get rid of pushDebugGroup/popDebugGroup 2023-01-08 01:41:56 +01:00
reallibretroadmin 10947894ea Combine metal_common.m into metal.m 2023-01-08 01:37:54 +01:00
github-actions d1408b0c24 Fetch translations from Crowdin 2023-01-08 00:12:11 +00:00
Tatsuya79 f441821297 Start unpause restriction. 2023-01-07 20:08:40 +01:00
Skirlez f2c16bd8d6 Scroll sound fixes
correctly get list size in xmb.c for playing scrolling sound when switching categories, play the scrolling sound when pressing cancel in ozone, play the sound when scrolling with ZL and ZR, play the correct sound when scrolling with L
2023-01-07 20:08:21 +01:00
libretroadmin 41b069462d (Android) Buildfix 2023-01-07 12:10:17 +01:00
Skirlez 9e668e1673 really fix build errors 2023-01-07 12:09:11 +01:00
Skirlez e1930a0051 hopefully fix build error 2023-01-07 12:09:11 +01:00
Skirlez 8a127eff02 Better scrolling sound implementation, add new 'notice back' sound
The closing info box sound (NOTICE_BACK) plays if you have the regular notice sound on, implemented generally.

audio_driver_mixer_play_menu_sound(i) will now stop sound i before playing it, so when you for example, cancel in rapid succession, it will properly play all canceling sound effects instead of not doing anything if the sound is already playing.

This scrolling implementation is a lot more general than the first one, to the point where RGUI plays all the correct sounds without any special additions. However, the Ozone sidebar scrolling or category switching in XMB or MaterialUI are still handled inside their driver .c files.
This implementation also fixes an issue where if wraparound was disabled the sound would still play if you held on a direction. I've also fixed it manually for XMB category switching, since it's still handled there individually (turns out, Ozone sidebar and MaterialUI categories just don't respect the no wraparound option, so there's no need to implement a fix there as well)
2023-01-07 12:09:11 +01:00
Eric Warmenhoven ab27029f2b Fix #14789
The change to apply shaders would be executed and then a command to
apply shaders would immeidately be enqueued, to run asynchronously
after the current event handler, which then did exactly the same
thing, creating a busy loop.
2023-01-07 10:53:30 +01:00
reallibretroadmin 6199baff3a Silence several Vulkan related warnings that showed up in Xcode 2023-01-07 08:05:06 +01:00
Eric Warmenhoven 3c199c794e Updated Vulkan on Metal for OSX via MoltenVK 2023-01-07 07:38:42 +01:00
libretroadmin e447a4e8e6 Get rid of RARCH_CTL_SET_{IDLE/PAUSED} 2023-01-07 07:32:16 +01:00
reallibretroadmin adee2dbe72 * Use strlcat instead of strcat
* Silence implicit conversion warnings detected in Xcode
2023-01-07 07:12:25 +01:00
libretroadmin 5872b357e6 Don't define tag_v variable when not needed 2023-01-07 05:25:56 +01:00
libretroadmin f82bc4e99c (Video filters) Cleanups 2023-01-07 05:23:50 +01:00
libretroadmin 3277d7b8fa (Emscripten) Add HAVE_PATCH support for Emscripten
(Patch) if HAVE_PATCH is not defined, silence warnings
2023-01-07 05:15:36 +01:00
libretroadmin c14d14548a Buildfix 2023-01-07 05:04:46 +01:00
github-actions 42bcbc76d7 Fetch translations from Crowdin 2023-01-07 00:26:27 +00:00
libretroadmin 5ac8cc0b6a * Rename retroarch_path_set_redirect to runloop_path_set_redirect
* move more retroarch path functions to runloop.c - because they
are related to the runloop state instead of retroarch state
2023-01-06 21:21:31 +01:00
libretroadmin 5debb7a622 Rewrite runloop_set_frame_limit 2023-01-06 20:59:15 +01:00
Eric Warmenhoven 1919cb4804 Include "Update Core Info Files" on iOS. 2023-01-06 18:23:17 +01:00
LibretroAdmin 17121b361d Update CHANGES.md 2023-01-06 08:10:38 +01:00
github-actions 503f7cde00 Fetch translations from Crowdin 2023-01-06 00:11:35 +00:00
libretroadmin 5bac2b0204 Cleanups 2023-01-05 23:34:46 +01:00
sonninnos 837ae65523 Fix crash when viewing history item information 2023-01-05 21:14:22 +01:00
retroNUC fbb4d67f7c Achievement Visibility Submenu - Text tweaks
+ removing gate from account error messages
2023-01-05 19:51:55 +01:00
retroNUC 31addc0a61 Achievement Visibility Submenu - Additional changes
- 'Unlocks/Mastery' split into two options
- 'Account/Login Messages' split off from 'Verbose', gated all login success/error messages
- menu_cbs_sublabel.c - Now in same order as menu options
- menu_setting.c - VISIBILITY_UNLOCK default value now uses define
- All suggested text/cleanup changes from Jamiras
2023-01-05 19:51:55 +01:00
retroNUC 1bf31d84db Include build fix for gcc/mingw 2023-01-05 19:51:55 +01:00
retroNUC 6e81098132 Add Achievements Visibility submenu options
- Startup Summary split off from Verbose Mode, added option to hide for games with zero core cheevos
- Some existing options moved into this submenu
- Leaderboard-related options coming in future PR
2023-01-05 19:51:55 +01:00
libretroadmin 253be8e682 Cleanup function 2023-01-05 19:44:12 +01:00
libretroadmin 7aab4e3d71 Move apple_view_type to apple_platform.h 2023-01-05 19:35:15 +01:00
libretroadmin b59a13771c Move input LUT table to input_driver.h 2023-01-05 19:30:51 +01:00
reallibretroadmin d36bd9e677 Silence some warnings found in Xcode 2023-01-05 09:27:45 +01:00
libretroadmin 7f0dfe797d (GL3) Comment out this variable that is not used 2023-01-05 09:18:43 +01:00
Eric Warmenhoven f07a720a31 On Metal OSX build, with GL cores, fix fullscreening redisplay 2023-01-05 09:04:47 +01:00
Gonzalo Peche 9efc1f500d In Android builds, add input_android_physical_keyboard configuration option and its corresponding menu entry to force a device to act as a physical keyboard.
When running on Android, RetroArch considers most devices that emit dpad events as gamepads, even if they also emit other keyboard events; this is usually the right thing to do, but it has the side effect of not letting some actual keyboards (e.g.: Logitech K480) act as such inside RetroArch. This configuration option allows users to manually select a specific input device to act as a physical keyboard instead of a gamepad, which is handy when emulating computers as opposed to consoles.
2023-01-05 04:50:37 +01:00
Eric Warmenhoven 860ffb2b6a Fix for fullscreen GL driver in Metal OSX build
After calling enterFullScreenMode on the GL view, it becomes the "key"
window, meaning it gets all of the input. This is problematic as that
view doesn't forward the input on to the input driver.
2023-01-05 01:21:15 +01:00
github-actions 59cbb16f1c Fetch translations from Crowdin 2023-01-05 00:11:41 +00:00
libretroadmin 0c42e339e1 Silence some warnings that popup in Xcode 2023-01-04 18:42:35 +01:00
Eric Warmenhoven 5f06c5487d Include GL video driver on Metal OSX builds 2023-01-04 12:16:39 +01:00
Eric Warmenhoven cf64525343 Include "Update Core Info Files" for iOS/tvOS
Also a build fix for tvOS with Xcode 14.2
2023-01-04 03:43:42 +01:00
zoltanvb 92c143ca51 Remaining changes for the simple help text replacements. 2023-01-04 03:43:16 +01:00
zoltanvb a5431dd965 Help text translation through Crowdin, phase 1.
Help texts can be activated for some menu items using Select / RShift.
These text items were hardcoded in msg_hash_us.c (and related translations).
This commit changes the simple text items to get the source from msg_hash_us.h
(or its translations).
2023-01-04 03:43:16 +01:00
github-actions 3047561621 Fetch translations from Crowdin 2023-01-04 00:11:29 +00:00
gugueU b6aa95cf16 Update selected save slot when start with cli --entryslot 2023-01-03 19:34:58 +01:00
Skirlez 48d3cca8b2 move curly brackets that start on the same line as the statement down a line
oops.
2023-01-03 19:34:35 +01:00
Skirlez 710625e0e6 put the if statement that leads to playing the sound inside the HAVE_AUDIOMIXER ifdef in menu_cbs_left and menu_cbs_right 2023-01-03 19:34:35 +01:00
Skirlez ae5612ce91 remove comment which wasn't in the correct format
or needed really
2023-01-03 19:34:35 +01:00
Skirlez aba01c87e3 add scrolling sounds for rgui, xmb, and glui and fix the ozone implementation + hebrew translation for menu sounds submenu
also adds audio_driver_mixer_play_scroll_sound to menu_cbs_left and menu_cbs_right which are (seemingly) responsible for the large scroll on some menus (and also bumper scrolling on glui's playlist menu?).
2023-01-03 19:34:35 +01:00
Skirlez f84093496f implement scrolling sounds for ozone
using roughly the same implementation for the ok/notice/cancel sounds, but i've made an exclusive function for scrolling since it's going to be called a lot more than those sounds
2023-01-03 19:34:35 +01:00
github-actions 43bee969b7 Fetch translations from Crowdin 2023-01-03 00:11:20 +00:00
retroNUC f2f7e2f8ee Fixed gfx scissoring on D3D drivers (#14793)
Zero width/height is valid, just means that it won't draw anything between those begin/end calls
2023-01-02 10:44:09 +01:00
github-actions 955431b354 Fetch translations from Crowdin 2023-01-02 00:11:48 +00:00
github-actions 2032d67b07 Fetch translations from Crowdin 2023-01-01 00:13:23 +00:00
Jonathan McDowell 750bc7bf8b Remove remaining mentions of joyconfig (#14787)
IS_JOYCONFIG was removed back in 2015 (1b7576aa), but there are still
some mentions of retroarch-joyconfig in the docs and Makefiles. Clean
these up so folk aren't confused about the fact it's no longer
available.
2022-12-31 02:35:08 +01:00
zoltanvb 8b536ec35d Modify translation completeness labels in order for them to appear in Crowdin. (#14785) 2022-12-31 02:34:45 +01:00
github-actions 4609c7f90a Fetch translations from Crowdin 2022-12-31 00:10:25 +00:00
retroNUC d24cdbfb15 Allow repositioning of RetroAchievement notifications (#14777)
* Allow repositioning of achievement notifications

* PS4/ORBIS build fix

Would have thought cheevos-related notification code was wrapped in HAVE_CHEEVOS, but guess not.
2022-12-30 16:55:38 +01:00
sonninnos e0e21b3386 Fix system info autoconf device list (#14783) 2022-12-30 16:53:47 +01:00
github-actions bc9c5718f9 Fetch translations from Crowdin 2022-12-30 00:10:44 +00:00
sonninnos 0be1aa0420 Add config + input related sublabels (#14781) 2022-12-30 00:48:04 +01:00
zoltanvb 76b3c09ea9 Translation completeness display. (#14779)
Display translation completeness categories in the language selection options.
Generate the progress report for RetroArch menu file instead of all files.
2022-12-29 22:21:23 +01:00
sonninnos 7d81be1d4c Handle content info label differently (#14776) 2022-12-29 09:16:31 +01:00
libretroadmin 27611288c0 Rename retroarch_get_current_savestate_path and retroarch_get_entry_state_path
to runloop_{function_name}
2022-12-29 02:13:31 +01:00
github-actions 7e7d2b3071 Fetch translations from Crowdin 2022-12-29 00:11:14 +00:00
sonninnos 2cbb7953d4 Fix visible core info version (#14775) 2022-12-28 03:00:21 +01:00
github-actions 42b9e23602 Fetch translations from Crowdin 2022-12-28 00:10:58 +00:00
zoltanvb 357ebc154b Remove () from language names. (#14771) 2022-12-27 21:42:00 +01:00
sonninnos 3092fda58b Fix menu switch icon correction crash (#14774) 2022-12-27 21:41:49 +01:00
sonninnos 86742b5563 (XMB) Stop showing bogus previous icon on CLI launch (#14773) 2022-12-27 21:41:36 +01:00
github-actions 204cce8d16 Fetch translations from Crowdin 2022-12-27 00:11:50 +00:00
github-actions 6aa15e5b15 Fetch translations from Crowdin 2022-12-26 00:11:19 +00:00
sonninnos d5f58fd435 Menu switch icon corrections (#14766) 2022-12-25 18:17:16 +01:00
github-actions 7de22a9326 Fetch translations from Crowdin 2022-12-25 00:11:45 +00:00
github-actions dea327a0c2 Fetch translations from Crowdin 2022-12-24 00:09:49 +00:00
Thiago Kenji Okada c5bfd52159 Add CORE_INFO_DIR to ./configure (#14761)
* Add missing FILTERS_DIR definition to qb/config.libs.sh

* Add CORE_INFO_DIR configuration option
2022-12-23 14:40:48 +01:00
libretroadmin 3bacd52629 Add HAVE_UPDATE_CORE_INFO for targets that already have HAVE_UPDATE_CORES defined 2022-12-23 01:52:38 +01:00
Thiago Kenji Okada 894c44c5ea Add more flags to ./configure (#14756)
* Allow disabling "Update Core Info" from Online Updater

* Add ASSETS_DIR as an alternative to DEFAULT_DIR_ASSETS

* Add FILTERS_DIR configuration option

* Fix other platform_unix.c platforms

* Conditionally use ASSETS_DIR/FILTERS_DIR
2022-12-23 01:28:57 +01:00
github-actions 0993324756 Fetch translations from Crowdin 2022-12-23 00:11:09 +00:00
libretroadmin e82b75c769 Fix more C89_BUILD issues 2022-12-22 23:10:15 +01:00
libretroadmin 7eedfc8673 No C++ comments in C files 2022-12-22 23:06:48 +01:00
LibretroAdmin 097a7d7fc5 - C89 buildfixes (#14758)
- Don't declare static function prototypes in headers
2022-12-22 22:14:50 +01:00
LibretroAdminandHyperspaceMadness f836328c56 Append Preset (#14737) (#14757)
WIP version of Append and Prepend preset, Includes UI for Standard Retroarch, but not the QT UI companion

Co-authored-by: HyperspaceMadness <[email protected]>
2022-12-22 21:36:32 +01:00
sonninnos 05c3c0a552 Automatic Frame Delay improvements (#14754) 2022-12-22 18:58:26 +01:00
zoltanvb 1334bd0408 Localization improvements. (#14753)
- enable localization of audio mixer sublabel
- resolve 2 localization FIXME items
- enable better localization of controller connect/disconnect/config messages
2022-12-22 16:54:14 +01:00
github-actions dbe5a047c4 Fetch translations from Crowdin 2022-12-22 00:11:10 +00:00
zoltanvb 8bfa02e2ea Fix for #14725 (#14750)
Revert one modification in 0f24d52407 that
makes "add to mixer" options do nothing.
2022-12-21 19:08:07 +01:00
github-actions 2b669f4e4b Fetch translations from Crowdin 2022-12-21 00:11:08 +00:00
zoltanvb 8de16f3323 Localization improvements. (#14748)
Added translatable labels for recording, streaming, logging, turbo options.
2022-12-20 23:54:49 +01:00
github-actions 5b89a9f90f Fetch translations from Crowdin 2022-12-20 00:11:01 +00:00
zoltanvb 02ba825c88 Enable localization of video rotation, orientation, aspect ratio options. (#14744) 2022-12-19 21:36:06 +01:00
LibretroAdmin f5133d8cc4 Revert "Add Xdelta support for softpatching (#14706)" (#14743)
This reverts commit aaad220836.
2022-12-19 03:29:46 +01:00
libretroadmin 91f3611fdd Revert "(xdelta3) Slim down on dependency"
This reverts commit d7d659147c.
2022-12-19 03:25:15 +01:00
libretroadmin 910db94e9f Revert "(xdelta3) Some additional cleanups"
This reverts commit 2f3821ffc8.
2022-12-19 03:25:07 +01:00
libretroadmin 7a4a860680 Revert "Don't rely on ENOSPC - relies on errno.h"
This reverts commit f6c2e4d292.
2022-12-19 03:22:07 +01:00
libretroadmin f6c2e4d292 Don't rely on ENOSPC - relies on errno.h 2022-12-19 03:17:09 +01:00
libretroadmin 2f3821ffc8 (xdelta3) Some additional cleanups 2022-12-19 03:09:55 +01:00
libretroadmin d7d659147c (xdelta3) Slim down on dependency 2022-12-19 02:53:15 +01:00
Jesse Talavera-Greenberg aaad220836 Add Xdelta support for softpatching (#14706)
* 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

* First crack at xdelta softpatching support

- There may be undiscovered edge cases or bugs

* 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

* First crack at xdelta softpatching support

- There may be undiscovered edge cases or bugs

* Remove trailing commas from the enums I modified

- C89 doesn't allow them

* 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

* Add some RARCH_DBG calls for xdelta patching

* 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
2022-12-19 01:10:04 +01:00
sonninnos 883e88fa73 Keyboard event blocking corrections (#14728) 2022-12-18 18:36:24 +01:00
Apaczer 4242a04641 add L3 & R3 mapping for MIYOO (#14741)
for Retropad

Update sdl_dingux_joypad.c
2022-12-18 04:08:16 +01:00
github-actions f238e1d1b2 Fetch translations from Crowdin 2022-12-18 00:11:25 +00:00
github-actions 932b4ad3db Fetch translations from Crowdin 2022-12-17 00:11:11 +00:00
sonninnos 16ca87c327 Rename Standalone Cores to Contentless Cores (#14738) 2022-12-16 19:02:24 +01:00
sonninnos 51c92c7e3a Fix icons in playlist manager (#14735) 2022-12-16 17:59:18 +01:00
github-actions b07b210f51 Fetch translations from Crowdin 2022-12-16 00:11:16 +00:00
libretroadmin 85598f24ad defines/ headers are libretro-common headers, search for them in
system header includes - other cleanups/nits
2022-12-15 15:09:40 +01:00
libretroadmin 5e6d917417 (audio/roar) remove errno.h include 2022-12-15 14:49:11 +01:00
libretroadmin 8f1af4a2e6 (Frontend) Style nits/cleanups 2022-12-15 14:34:22 +01:00
github-actions c40c60ca60 Fetch translations from Crowdin 2022-12-15 00:11:47 +00:00
zoltanvb 748ce417e4 Cleanup of msg_hash_xx.c files after msg_hash_us.c cleanup. (#14730) 2022-12-14 11:52:56 +01:00
github-actions 3bda9cad1e Fetch translations from Crowdin 2022-12-14 00:11:59 +00:00
LibretroAdmin e3c92b0c9d Update CHANGES.md 2022-12-13 23:20:37 +01:00
MajorPainTheCactus 5d306acd90 Fixed some shaders not appearing with the d3d12 driver - this reintroduces a validation error though but it seems to work as in not crash and is the old RA behaviour. Guess we need a different way of fixing the validation issue. (#14729) 2022-12-13 23:19:28 +01:00
github-actions de26e07062 Fetch translations from Crowdin 2022-12-13 00:12:10 +00:00
LibretroAdmin ad89b0c655 Update CHANGES.md 2022-12-12 14:11:11 +01:00
zoltanvb 5838bb98ef Cleanup of help texts. (#14723)
All help texts were removed, which fell into one of the categories below:

1. there is sublabel for the menu item and it contains same or better text.
Such texts and translations should be maintained as sublabel, located in
msg_hash_xx.h. Since PR#14714, sublabel will be displayed as help if present.

2. it could be confirmed that this help text is currently not shown anywhere.
Examples are deprecated features (like DEBUG_INFO) or fully removed (like
CONFIRM_EXIT)

Some enum labels were just fixed to enable display.

Information can also be updated in several places, but let's keep it separate.
2022-12-12 05:53:49 +01:00
Francisco Javier Trujillo Mata b207ddbe84 [PS2] Use ps2_drivers library for simplify frontend (#14724)
* Use ps2_drivers

* improvements in frontend driver

* Resetting IOP drivers before load elf
2022-12-12 05:52:57 +01:00
github-actions b2d73c9bf2 Fetch translations from Crowdin 2022-12-12 00:11:37 +00:00
github-actions 844dfc9b60 Fetch translations from Crowdin 2022-12-11 00:12:39 +00:00
zoltanvb e6421f6f8b Use sublabel as help text if there is no suitable definition. (#14714)
* Use sublabel as help text if there is no suitable definition.

* code style update
2022-12-10 18:06:45 +01:00
libretroadmin d08c6d2db3 Bump to version 1.14.0 2022-12-10 17:57:06 +01:00
Ruben Nine db9d3d3507 Allow coreaudio3 driver to work with audio devices that have 2 or more output channels. (#14715) 2022-12-10 16:08:26 +01:00
Jamiras c2f50a83bf fix construction of badge path (#14712) 2022-12-10 08:40:40 +01:00
github-actions fc24410763 Fetch translations from Crowdin 2022-12-10 00:11:34 +00:00
github-actions 3a817dd956 Fetch translations from Crowdin 2022-12-09 00:13:07 +00:00
Rany 7b09cb2de4 Fix runtime error in FFmpeg core when build with FFmpeg n5.1.2 and OpenGL ES (#14710)
* include libavcodec/version.h in video_buffer.h

Without this header video_decoder_context_t may be defined as different structure
in video_buffer.c and ffmpeg_core.c

* Fix the wrong data pointer for glTexImage2D when OpenGL ES enabled
2022-12-08 12:45:07 +01:00
github-actions 2f7c29862c Fetch translations from Crowdin 2022-12-07 00:11:31 +00:00
github-actions 3532608588 Fetch translations from Crowdin 2022-12-06 00:11:40 +00:00
libretroadmin 56fe3d6629 Remove unused function 2022-12-05 21:40:51 +01:00
Denis Kopyrin a22bac091c (macOS) Fixed cocoa keyboard not allowing to map Analog stick (#14701) 2022-12-05 16:12:19 +01:00
libretroadmin 573a82c0c8 Buildfix for Miyoo 2022-12-05 15:46:44 +01:00
libretroadmin 2c42912185 More header cleanups 2022-12-05 15:15:07 +01:00
libretroadmin 04f510d503 Cleanup header includes 2022-12-05 15:10:19 +01:00
libretroadmin daa4c19d18 Style nits/minor cleanups 2022-12-05 14:24:49 +01:00
libretroadmin fd59309fcd Cleanups 2022-12-05 14:03:21 +01:00
libretroadmin 30ea7da063 Cut down on header includes 2022-12-05 13:44:20 +01:00
libretroadmin 440c7a5ddf core_info_list_resolve_all_extensions - just use strlcat in here 2022-12-05 13:24:47 +01:00
libretroadmin 2ade990a08 (core_info.c) Style nits/cleanups and misc 2022-12-05 12:56:55 +01:00
github-actions a11555a3f2 Fetch translations from Crowdin 2022-12-05 00:12:09 +00:00
andymcca 3bf16013a3 Add Leapfrog (LFx000) Target (#14697)
This is to add a separate Makefile for the Leapfrog devices (primarily Leapster Explorer and LeapsterGS Explorer), intended to be used with the Retroleap project (https://github.com/mac2612/retroleap)  The Leapster Explorer SoC is essentially the same as the Miyoo v1, and as such I've based it on the Makefile for this device, but intend making a few config changes after a bit more testing and tailoring to both LF devices.
2022-12-04 22:53:13 +01:00
libretroadmin 91b77cf14a (Vulkan) Cleanups - use int for loop counter variables, don't do
some assignments that are already done directly after
2022-12-04 15:29:48 +01:00
libretroadmin fbfbb81133 (sdl_dingux) Put conditional around access of 'frame' pointer 2022-12-04 15:07:16 +01:00
andymcca 513370f715 (sdl rs_90) Replicate black screen fix #12521 (#14695)
Add the fix from PR #12521 to the RS90 driver
2022-12-04 15:06:00 +01:00
github-actions 32bea11cc3 Fetch translations from Crowdin 2022-12-04 00:12:42 +00:00
github-actions 09170c3290 Fetch translations from Crowdin 2022-12-03 00:10:39 +00:00
sonninnos 3791860488 Prevent MIDI startup error with old configurations (#14693) 2022-12-02 18:21:56 +01:00
sonninnos 5024809c85 Device Index menu refactor (#14691) 2022-12-02 17:47:53 +01:00
sonninnos 9e503a6106 Build warning fix win32 (#14692) 2022-12-02 17:47:07 +01:00
github-actions 632e902a3b Fetch translations from Crowdin 2022-12-01 00:14:11 +00:00
github-actions 74d0dd16fb Fetch translations from Crowdin 2022-11-30 00:12:51 +00:00
sonninnos 8e937ddd6a MIDI driver cleanups (#14686) 2022-11-29 11:29:39 +01:00
LibretroAdmin c75af6194b Extended IME and Korean OSK (#14676) 2022-11-29 04:45:55 +01:00
github-actions 68ee68bf7f Fetch translations from Crowdin 2022-11-29 00:13:02 +00:00
sonninnos 68773becc6 Extend OFF menu value colors (#14685) 2022-11-28 21:14:47 +01:00
sonninnos 02ab636d00 Explore thumbnail fixes (#14682) 2022-11-28 19:01:02 +01:00
github-actions 1bbc1508e4 Fetch translations from Crowdin 2022-11-28 00:12:13 +00:00
libretroadmin 192f4859e0 (GX) More buildfixes for Github CI 2022-11-27 23:46:30 +01:00
libretroadmin 16952aa23b (GX) Another header include buildfix 2022-11-27 23:41:21 +01:00
libretroadmin 9627e782aa (GX) Buildfixes 2022-11-27 23:37:08 +01:00
libretroadmin 8af051076c Another buildfix - circular dependencies can tend to be a drag 2022-11-27 23:14:30 +01:00
libretroadmin d26c1b7ca8 Buildfixes 2022-11-27 23:10:46 +01:00
libretroadmin cc37b7037f Move enum screensavers to menu_defines.h 2022-11-27 23:08:14 +01:00
libretroadmin 019ebce8c7 (RGUI) Buildfix 2022-11-27 23:00:43 +01:00
libretroadmin 38bc51f5c2 (config.def.h) only try to include define headers 2022-11-27 22:57:17 +01:00
libretroadmin 694b84937f (RGUI) Properly namespace some functions 2022-11-27 22:25:58 +01:00
libretroadmin f90ea7b065 Get rid of unused variable 2022-11-27 22:16:23 +01:00
LibretroAdmin fcd4dce445 Use only macros from now on in config.def.h (#14681) 2022-11-27 22:15:59 +01:00
sonninnos 7873378a98 Turn menu related config defaults from bools to defines (#14680) 2022-11-27 21:01:53 +01:00
libretroadmin 77f509ab3c (MaterialUI) Fix home screen on first startup - no more stray entries 2022-11-27 20:23:59 +01:00
sonninnos d03b77d4cf Menu icon improvements (#14679) 2022-11-27 19:19:55 +01:00
LibretroAdmin bf456b7fe1 Update CHANGES.md 2022-11-27 10:31:38 +01:00
libretroadmin b0f337e95e Style nits:
* C comments
* Single line blocks don't need brackets
2022-11-27 10:23:12 +01:00
MajorPainTheCactus 7ebd8e190a Fixes for d3d12 and d3d11 drivers when using shaders with TATE mode arcades etc (#14678)
Added support for break on errors in d3d12 (development aid)
Added support for DRED (device remove extended data) in d3d12 (development aid)
Made d3d12 viewport and scissors to behave more like vulkan drivers (or be more correct)
Fixed validation error on start up due to buffers not being setup correctly for one frame
2022-11-27 10:20:34 +01:00
github-actions d467cbd52d Fetch translations from Crowdin 2022-11-27 00:13:30 +00:00
libretroadmin 82ca2a8267 (sdl_gfx.c) Style nits 2022-11-26 21:06:55 +01:00
andymcca 083b14b85c (sdl gfx) Replicate #12521 / Fix no menu on start (#14677)
#12521 fixes blank screens on the sdl_dingux driver, so just replicating that change here on the standard sdl_gfx driver.  Also, fix a problem where the menu will never show up in this driver, because you cannot blit to a surface in SDL while it is locked (i.e. after issuing an SDL_LockSurface command.
2022-11-26 21:05:30 +01:00
github-actions 31e549ce9c Fetch translations from Crowdin 2022-11-26 00:11:25 +00:00
libretroadmin b8eefbf0ab (MSVC 2017/2019) Change default buildbot cores URL from (non-existent) MSVC 2017 cores URL
to mainline windows x64 cores URL
2022-11-25 22:44:32 +01:00
github-actions 29fd4c1b3a Fetch translations from Crowdin 2022-11-25 00:11:45 +00:00
libretroadmin 03e71e651f (iOS) Get rid of this dead code - remnants of when we had a companion UI 2022-11-24 19:57:45 +01:00
andymcca 8368c2daad Add 256x192 snn upscale function (Fuse core) (#14667)
Added snn function to upscale Fuse (ZX Spectrum) core borderless output to 320x240
2022-11-24 19:54:24 +01:00
sonninnos 88c1e276a3 Restore framelimit on fastforward toggle (#14668) 2022-11-24 16:53:52 +01:00
github-actions b403f5fc1f Fetch translations from Crowdin 2022-11-24 00:13:21 +00:00
libretroadmin 64f22ae2b2 (Qt) Style nits 2022-11-23 23:04:43 +01:00
libretroadmin c196eed3fd Remove useless forward declaration 2022-11-23 21:05:28 +01:00
libretroadmin e108fefc41 Remove video_driver_set_video_cache_context_ack - replace with single line 2022-11-23 20:55:05 +01:00
libretroadmin f062b74e26 Overlays/Input: Turn a bunch more functions static 2022-11-23 19:54:15 +01:00
libretroadmin 0cf1d86a3a (input_driver.c) Turn bunch of functions static that are never accessed outside
* Turn some variable / parameter names like 'joypad_driver_name' into 'joypad_drv_name'
so they are less likely to conflict with symbol names
2022-11-23 19:14:24 +01:00
libretroadmin 6e3f168c1c (sinc) Hopefully that's the last of these warnings 2022-11-23 18:07:53 +01:00
libretroadmin 8ed246be86 (sinc resampler) Silence warning
(MaterialUI) Style nits
2022-11-23 18:03:44 +01:00
libretroadmin f8043f847e (Qt) Remove some if 0 code blocks 2022-11-23 17:34:52 +01:00
LibretroAdmin c10dfca92c Update CHANGES.md 2022-11-23 16:50:32 +01:00
sonninnos 9297ff44b7 (Ozone+XMB) Fix overlays behind menu without core running (#14663) 2022-11-23 16:48:58 +01:00
libretroadmin 16e0319e2e Remove unnecessary function ui_companion_set_foreground 2022-11-23 06:18:20 +01:00
libretroadmin 9bbe6992e2 (UI Companion) simplify boolean code by replacing it with flags 2022-11-23 06:14:56 +01:00
libretroadmin c39770e23c ui_browser_window_state_t - bools never used - remove 2022-11-23 06:00:20 +01:00
libretroadmin c309c102d8 Silence more warnings and create more of a distinction between variables
that belong to the runloop state vs. retroarch state
2022-11-23 05:28:07 +01:00
libretroadmin b84416ac7c (retroarch.c) Silence warnings 'value stored to runloop_st during its initialization
is never read'
2022-11-23 05:23:35 +01:00
libretroadmin 736a3034bb (materialUI) Silence signedness warnings 2022-11-23 05:20:17 +01:00
libretroadmin 3fbcde000c (string_list) Silence warning 2022-11-23 05:10:35 +01:00
libretroadmin 7dfaae58f9 (UI) Cleanups; style nits 2022-11-23 05:08:15 +01:00
libretroadmin d12a747e06 Update CHANGES.md 2022-11-23 04:18:41 +01:00
github-actions 5d82f19356 Fetch translations from Crowdin 2022-11-23 00:12:28 +00:00
libretroadmin 57acf1421b Remove workflow for fdroid as per Vinfall recommendation 2022-11-22 22:15:51 +01:00
libretroadmin aa0ae2cd3e Silence warnings 2022-11-22 18:34:04 +01:00
neil4 3b0db75782 Overlay cleanups; replace bools with flags (#14661) 2022-11-22 18:29:11 +01:00
libretroadmin 92e0403aeb general_push - add exception to populating setting 2022-11-22 17:44:34 +01:00
libretroadmin dd2d9d2f22 Simplify general_push 2022-11-22 17:40:21 +01:00
sonninnos e0e6810cf0 Allow toggling info off with the same button (#14660) 2022-11-22 17:23:19 +01:00
libretroadmin 5351aeaa4e (DRM Go2) fix to prior commit - not sure why this was missing 2022-11-22 17:11:11 +01:00
libretroadmin 623b925256 Implement get_video_size for DRM Go2 2022-11-22 17:09:51 +01:00
sonninnos ce1e59615a (WinRaw) Fix mouse position when using input overlay with mouse cursor (#14659) 2022-11-22 16:50:17 +01:00
sonninnos 9bc7bebf51 More hotkey cleanups (#14657) 2022-11-22 14:45:30 +01:00
sonninnos aeaf5561bd Fix libchdr warning (#14658) 2022-11-22 14:44:56 +01:00
libretroadmin 3e661ea42e Buildfix 2022-11-22 06:13:23 +01:00
libretroadmin a93a2186c0 (WiiU) Cleanups in aux code 2022-11-22 06:08:17 +01:00
libretroadmin 8db6197e4b (Wiiu) Cleanup of aux files 2022-11-22 05:49:46 +01:00
github-actions 1a87e1107b Fetch translations from Crowdin 2022-11-22 00:13:08 +00:00
libretroadmin e3f5d32401 general_push - simplifications 2022-11-21 23:11:34 +01:00
libretroadmin 1c9d3ad0bf Silence some warnings 2022-11-21 20:56:28 +01:00
LibretroAdmin b04853faf7 Runahead buildfixes #1 for Switch (#14655) 2022-11-21 20:16:10 +01:00
libretroadmin 8335e347f0 Simplify core_load_game 2022-11-21 19:41:57 +01:00
libretroadmin 065cdc87ac Final buildfixes for runahead 2022-11-21 19:38:15 +01:00
libretroadmin 6b71214ed7 Silence some signed/unsigned mismatch warnings 2022-11-21 19:34:43 +01:00
libretroadmin 0eed1c4853 Buildfixes for targets with no runahead support 2022-11-21 19:26:01 +01:00
libretroadmin cc3169febe (runloop) Cleanups 2022-11-21 19:11:55 +01:00
libretroadmin f21b878ed6 Disable 'Pause on Disconnect' by default 2022-11-21 18:12:53 +01:00
libretroadmin 6815383113 * Create runloop_state_free (instead of duplicated code lines in
retroarch.c and runloop.c
* Turn a whole bunch of unctions in runloop.c static as a consequence
2022-11-21 17:45:39 +01:00
sonninnos 10a74657c3 Move SRAM init to content init (#14653) 2022-11-21 15:24:58 +01:00
libretroadmin 6a098d37ac Use HAVE_DYLIB instead of HAVE_DYNAMIC when loading shared libraries 2022-11-21 05:37:35 +01:00
libretroadmin 3b38ea195f Use HAVE_DYLIB for loading dynamic libraries instead of HAVE_DYNAMIC 2022-11-21 05:23:43 +01:00
neil4 e71a5ff921 Overlay animation-related fixes (#14651)
- Fix analog drift blocking touch input (could occur on overlay_next if physical inputs shown on overlay)
- Fix overlay_next buttons lighting up in unison
- Skip meta keys in input_overlay_add_inputs (not supported by input_state_internal)
2022-11-21 04:48:34 +01:00
github-actions 8d499f577d Fetch translations from Crowdin 2022-11-21 00:13:10 +00:00
libretroadmin 59cce09186 Menu cleanups:
* Some control flow improvements in callback functions, less return
paths
* Remove menu_cbs_exit(), which was a stub function that always returned
-1
2022-11-20 18:55:07 +01:00
sonninnos e52b633e5a Allow menu wallpaper/background reset (#14650) 2022-11-20 18:12:18 +01:00
sonninnos 43b6d59740 Command line output cleanups (#14649) 2022-11-20 16:48:29 +01:00
sonninnos 7275b82614 System Information cleanups (#14647) 2022-11-20 13:39:02 +01:00
sonninnos 3377fd55ab Driver + hotkey list reorder (#14646)
* Reorder driver menu and lists

* Reorder hotkey list
2022-11-20 07:26:34 +01:00
LibretroAdmin 4e51ca6681 Update CHANGES.md 2022-11-20 01:37:03 +01:00
github-actions 40fa56bfdd Fetch translations from Crowdin 2022-11-20 00:13:17 +00:00
VinfallandVinfall 0c233bff4e Add CI to dump default.txt for F-Droid release (#14644)
Co-authored-by: Vinfall <[email protected]>
2022-11-19 23:34:07 +01:00
LibretroAdmin ce9051f8d0 Update .gitlab-ci.yml 2022-11-19 20:45:44 +01:00
LibretroAdmin ac08c0ce55 Update .gitlab-ci.yml 2022-11-19 17:47:30 +01:00
libretroadmin 0bf818af8d Bump version to 1.13.0 2022-11-19 03:10:12 +01:00
github-actions c641f20e6a Fetch translations from Crowdin 2022-11-19 00:12:59 +00:00
libretroadmin 8976a179df (video_thread_wrapper) For threaded/audio video wrapper we will use
bools instead of flags
2022-11-18 20:42:47 +01:00
libretroadmin 63a080af3f (Android) Do not enable threaded video by default for Android 2022-11-18 20:03:19 +01:00
RichardandRichard c0926ad1a1 feat(iOS13): Pointer Movement Accuracy (#14641)
Co-authored-by: Richard <[email protected]>
2022-11-18 19:45:36 +01:00
github-actions 61a8b19b2b Fetch translations from Crowdin 2022-11-18 00:15:32 +00:00
libretroadmin a50f9bae85 Turn scroll.mode into enum 2022-11-17 19:44:42 +01:00
libretroadmin 5402b781fe (menu_cbs_ok.c) Cleanups 2022-11-17 19:08:21 +01:00
github-actions 2103280fdd Fetch translations from Crowdin 2022-11-17 00:12:45 +00:00
libretroadmin 9e0c0865cd Use HAVE_DYLIB more 2022-11-16 17:09:53 +01:00
libretroadmin 63153620a7 There can be builds that are statically built against a libretro core
but still have dylib support
2022-11-16 16:51:53 +01:00
libretroadmin 0b71407b62 Use flags for state_manager_rewind_state 2022-11-16 15:13:59 +01:00
RichardandYuki Fushimi 5e9e5177ec feat(iOS13.4): Add Trackpad Support(iOS13.4 and above) (#14633)
Co-authored-by: Yuki Fushimi <[email protected]>
2022-11-16 14:52:58 +01:00
sonninnos 706d79f535 Consistent left-right scrolling for Quick Menu items (#14631) 2022-11-16 10:37:26 +01:00
sonninnos b080b39d2b Remove useless sublabel from System Information (#14632) 2022-11-16 10:36:54 +01:00
github-actions ff5e0220c3 Fetch translations from Crowdin 2022-11-16 00:13:51 +00:00
sonninnos 3e8ff57e2c (Ozone) Show metadata helper in footer only with second thumbnail (#14630) 2022-11-16 00:20:36 +01:00
sonninnos 3b921ffbfa Fix shader toggle and add hotkey + sublabel (#14628) 2022-11-15 22:14:09 +01:00
LibretroAdmin 7ca0d36169 Update .gitlab-ci.yml 2022-11-15 20:44:11 +01:00
libretroadmin e24d62715e (font_renderer) Cleanups 2022-11-15 16:03:01 +01:00
libretroadmin 527d1557ce (Fonts) Cleanups 2022-11-15 16:00:21 +01:00
github-actions 6ff82319fb Fetch translations from Crowdin 2022-11-15 00:13:23 +00:00
libretroadmin d5a268a2ac * Fix signed/unsigned mismatches
* Fix missing IPAddr on MSVC2017 UWP - use ULONG instead since this is
just a typedef
2022-11-15 00:24:26 +01:00
sonninnos 030c3cba44 Don't show override notification with appendconfig alone (#14624) 2022-11-14 20:52:05 +01:00
sonninnos cd2392c559 (XMB) Improve background image selector (#14623) 2022-11-14 11:48:40 +01:00
github-actions 1ada87736a Fetch translations from Crowdin 2022-11-14 00:13:12 +00:00
Jamiras e46e03094f upgrade to rcheevos 10.5 (#14622) 2022-11-13 23:24:42 +01:00
Francisco Javier Trujillo Mata 106a6c268e Point to libretro.gitlab package container (#14621) 2022-11-13 20:17:13 +01:00
sonninnos 86669d21e2 Pausing cleanups and corrections (#14618) 2022-11-13 17:22:36 +01:00
neil4 3de186e374 Overlays: Ignore hitboxes with zero area (#14619)
I.e. Set 'reach_x' or 'reach_y' to zero to ensure no hitbox math is done

nits
2022-11-13 10:46:41 +01:00
github-actions 6c05f4794c Fetch translations from Crowdin 2022-11-13 00:13:32 +00:00
GABO1423 b6563f7b5d (UWP) Build Fix (#14617) 2022-11-12 20:06:15 +01:00
github-actions d5a54cb782 Fetch translations from Crowdin 2022-11-12 00:14:02 +00:00
flk d6cbd8a5a9 config.libs: dont fail if OSDependent/OGLCompiler libraries are not present (#14612)
glslang no longer installs them separately, and all needed
functionality has been merged into glslang shared library itself.

This wasn't a problem previously as they were still provided
as static libraries but in latest glslang they no longer are:
https://github.com/KhronosGroup/glslang/commit/7cd519511c32d7e86d901c7ed231cb84c652d18

Signed-off-by: Markus Volk <[email protected]>

Signed-off-by: Markus Volk <[email protected]>
2022-11-11 15:11:17 +01:00
Michael Burgardt 648b0ab7b7 (Bug fix) Fix the weird 'empty translations' & correct backslash escaping in translation strings (#14609)
* (Bug fix) Fix the weird 'empty translations' & correct backslash escaping in translation strings

* Update crowdin workflows
GitHub is deprecating Node.js 12, so some actions need to be updated to ensure functionality into the future.
2022-11-11 07:56:17 +01:00
github-actions a73e1beb1c Fetch translations from Crowdin 2022-11-11 00:14:18 +00:00
Francisco Javier Trujillo Mata c28fede937 Adding Orbis actions to RA 2022-11-10 21:48:19 +01:00
Francisco Javier Trujillo Mata 0b329b1694 Merge pull request #14596 from libretro/orbis-release
[Orbis] Prepare for release
2022-11-10 20:06:45 +01:00
Ryunam 49b973ac89 (Ozone+XMB) Add option to customize cursor memory (#14605) 2022-11-10 15:46:44 +01:00
Ryunam eb5b4197f8 (Ozone+XMB) Further extend texture support for Core Option categories (#14607) 2022-11-10 09:27:49 +01:00
github-actions c3d2548a38 Fetch translations from Crowdin 2022-11-10 00:14:31 +00:00
github-actions e3ba29b434 Fetch translations from Crowdin 2022-11-09 00:14:13 +00:00
Francisco Javier Trujillo Mata 7a8617bad5 Improve makefiles 2022-11-08 21:36:44 +01:00
sonninnos 68401205f2 Add option for pause on controller disconnect (#14601) 2022-11-08 12:46:09 +01:00
github-actions 6083ab14e5 Fetch translations from Crowdin 2022-11-08 00:14:27 +00:00
sonninnos 954d1bf605 Driver independent disconnection notification (#14600) 2022-11-07 05:51:37 -08:00
Michael Burgardt e3a25793b6 (Bug fix) Escape backslashes in translation strings (#14599) 2022-11-07 10:46:54 +01:00
sonninnos da6e560e72 (Ozone) Fixes, nits and cleanups (#14598) 2022-11-07 05:48:32 +01:00
github-actions ec625cf145 Fetch translations from Crowdin 2022-11-07 00:14:34 +00:00
Francisco José García García 4d92fc5f76 (Orbis) Add salamander 2022-11-06 20:40:08 +01:00
neil4 217fba48c5 minor overlay-related fixes (#14594)
input_overlay_loaded: Only update menu entries if changed

input_overlay_add_inputs: Set 'updated' for analogs when touched
2022-11-06 17:25:44 +01:00
sonninnos 6d34ef46f4 Prevent video filter init if game is not running (#14593) 2022-11-06 10:16:20 +01:00
sonninnos 9796024f3d (XInput) Ensure disconnection notification (#14592)
* (XInput) Ensure disconnection notification

* Prefer display_name in autoconfig disconnect notification
2022-11-06 02:34:03 +01:00
github-actions 5869caf7f2 Fetch translations from Crowdin 2022-11-06 00:15:22 +00:00
neil4 b47fb0b807 Overlays: Add 'reach' and 'exclusive' for hitboxes (#14591)
Allows stretching hitboxes and handling their overlap

reach_up, reach_down, reach_left, reach_right:
- Stretches in one direction:
reach_x, reach_y
- Stretches symmetrically

exclusive:
- If true, blocks input from overlapped hitboxes
range_mod_exclusive:
- Similar, but only applies when this hitbox is extended by range_mod
- After range_mod takes effect, has priority over 'exclusive'

E.g. This creates a D-Pad area and extends its hitbox left & right 50%, up 15%, and down 30%. Then applies range_mod_exclusive:
overlay0_desc0 = "dpad_area,0.15,0.57,rect,0.166228,0.295516"
overlay0_desc0_reach_x = 1.5
overlay0_desc0_reach_up = 1.15
overlay0_desc0_reach_down = 1.3
overlay0_desc0_range_mod = 2.0
overlay0_desc0_range_mod_exclusive = true
2022-11-05 21:32:22 +01:00
github-actions 7a6c56e947 Fetch translations from Crowdin 2022-11-05 00:13:28 +00:00
Michael Burgardt b89692c532 Add Hungarian language option (#14585) 2022-11-04 19:52:39 +01:00
github-actions 5b8baaf2d9 Fetch translations from Crowdin 2022-11-04 00:14:32 +00:00
Hans-Kristian Arntzen 498835a1f7 Vulkan: Fix HDR inverse tonemapping. (#14587)
Only skip tonemapper if HDR10 is explicitly enabled by last shader pass.
Otherwise, we are simply just inheriting the bit-depth of the swapchain.
2022-11-04 00:50:19 +01:00
sonninnos 69060796bb Improve widget appearance with missing assets (#14588) 2022-11-04 00:15:31 +01:00
sonninnos d4eef18f18 Addition to analog stick menu navigation (#14584) 2022-11-03 20:28:24 +01:00
DiktatorShadalooandDiktatorShadaloo 5587ab4f8b Adding some usb hid drivers (#14581)
* Added usb hid controllers for the famous ZeroDelay encoder and also for "Kade: Kick Ass Dynamic Encoder" to be able to use some custom arcade sticks.

* Add accidentally missing change to Makefile

Co-authored-by: DiktatorShadaloo <[email protected]>
2022-11-03 03:00:42 +01:00
LibretroAdmin bba1fdca30 (D3D12) Use flags instead of boolean variables 2022-11-03 01:31:15 +01:00
github-actions 3b300f395b Fetch translations from Crowdin 2022-11-03 00:14:28 +00:00
LibretroAdmin 1263b53dae Silence warning 2022-11-03 00:34:33 +01:00
LibretroAdmin 7aa8c6bb11 (D3D10) Turn boolean variables into flags 2022-11-02 23:19:41 +01:00
LibretroAdmin 56ad3fa091 (Vk struct) Turn boolean variables into flags 2022-11-02 21:34:00 +01:00
LibretroAdmin 15048027e7 (D3D11) Turn booleans into flags 2022-11-02 08:31:40 +01:00
sonninnos 1aa258faa0 Enable menu navigation also with right analog stick (#14579) 2022-11-02 07:42:36 +01:00
LibretroAdmin c4d2788c08 Rollback extended character PR - caused too many issues
and caused crashes - contributor can submit a new improved PR -
would also prefer increased readability
2022-11-02 06:23:46 +01:00
LibretroAdmin 0ffdf0790c (Ozone) Turn more booleans into flags 2022-11-02 03:19:31 +01:00
LibretroAdmin 01649d7955 (Ozone) Turn more booleans into flags 2022-11-02 01:45:43 +01:00
github-actions a024d620bb Fetch translations from Crowdin 2022-11-02 00:13:41 +00:00
LibretroAdmin db6e0b1f42 Removed credits - requested by author 2022-11-01 21:40:13 +01:00
sonninnos 1c7855acc8 Add option for swapping menu scrolling buttons (#14577) 2022-11-01 19:48:28 +01:00
sonninnos aa3c8de64c Update AUTHORS.h (#14576) 2022-11-01 17:25:09 +01:00
LibretroAdmin e4e776abf7 (Ozone) Partial conversion of booleans to flags 2022-11-01 08:27:10 +01:00
LibretroAdmin bfd9419d6a (MaterialUI) Turn booleans into flags 2022-11-01 06:51:53 +01:00
LibretroAdmin ea4b815117 (RGUI) Turn booleans into flags 2022-11-01 05:33:58 +01:00
LibretroAdmin 6176b6a764 (3DS/CTR) Remove MaterialUI as per MrHuu recommendation 2022-11-01 04:01:45 +01:00
github-actions db1184c19d Fetch translations from Crowdin 2022-11-01 00:16:10 +00:00
LibretroAdmin aeef3d6220 (3DS/CTR) Remove debug button combo that quites RetroArch 2022-10-31 23:02:35 +01:00
LibretroAdmin b2e2330ed7 Addendum to prior commit - should be good now 2022-10-31 20:32:11 +01:00
LibretroAdmin 9a3a5688b8 Go about this a better way - the conditionals should now be fixed 2022-10-31 20:23:57 +01:00
LibretroAdmin 8485233b08 Update CHANGES.md 2022-10-31 19:40:14 +01:00
LibretroAdmin cb1b02a1c3 Revert changes to struct - concern trolling over perceived
backwards compat. regression (whether proven or not)
2022-10-31 19:17:05 +01:00
redenvelope2000 47070a64e6 Fixed macOS keyboard bindings in game focus mode. (#14570)
In the game focus mode the keyboard should not be remapped for joypads unless it is used for toggling the game focus mode.
2022-10-31 11:35:17 +01:00
github-actions 9e84c89233 Fetch translations from Crowdin 2022-10-31 00:14:55 +00:00
LibretroAdmin cf0951b5d5 (Android) Do device initialization only once in init function 2022-10-31 00:36:55 +01:00
LibretroAdmin 03a2f10117 Turn some variables static 2022-10-31 00:20:23 +01:00
LibretroAdmin 5705ff95cb (Cocoa) Revert this until reported issue with Game Focus is resolved 2022-10-30 23:39:02 +01:00
LibretroAdmin 5d4c6a9564 Some small opts to two conditionals 2022-10-30 23:21:43 +01:00
LibretroAdmin 724acc4eb9 (Vulkan) Use flags for vulkan_ctx_data 2022-10-30 23:07:07 +01:00
LibretroAdmin 0159c2f70f gfx_ctx_vulkan_data - use flags instead of booleans 2022-10-30 22:03:36 +01:00
LibretroAdmin 250a0b9542 Implicitly use floats in float arrays 2022-10-30 20:16:16 +01:00
LibretroAdmin 07378abbdf (task_save) Use flags instead of booleans
(task_screenshot) Start reducing amount of parameters
2022-10-30 18:41:41 +01:00
LibretroAdmin 11047c6f4d (netplay_frontend) Use flags instead of booleans 2022-10-30 18:20:08 +01:00
AKuHAK c3914d1c85 (database) Added serial scanning for PS2 (#14566)
reworked ps1 magic numbers
PS1 scan: fixed not scanned LSP titles, added PSX.EXE titles, extended ps1 serial variations
2022-10-30 17:21:48 +01:00
neil4 2de52baf74 Overlays: Add eightway area types (#14565)
- New descriptors: 'dpad_area' and 'abxy_area'
- Each has a diagonal sensitivity setting, 100% being 8-way symmetry
- Buttons can be redefined in the cfg file

E.g. This would create a d-pad area, then redefine it to use analog directions:
overlay0_desc0 = "dpad_area,0.85,0.57,rect,0.166228,0.295516"
overlay0_desc0_up = "r_y_minus"
overlay0_desc0_down = "r_y_plus"
overlay0_desc0_left = "r_x_minus"
overlay0_desc0_right = "r_x_plus"
2022-10-30 06:31:27 +01:00
github-actions 6a9eea5958 Fetch translations from Crowdin 2022-10-30 00:15:31 +00:00
LibretroAdmin a94c4c72c2 Use size_t as type for returned value of strlen instead of int 2022-10-29 19:40:48 +02:00
LibretroAdmin b4a2216049 (Context drivers) Cleanups; use flags instead of booleans etc. 2022-10-29 19:36:50 +02:00
LibretroAdmin 9b21848f4c (Cocoa GL CTX) Turn booleans into flags 2022-10-29 19:25:47 +02:00
LibretroAdmin ffd3d195b5 Another C++ comment that had to be converted to C-style comment 2022-10-29 19:18:22 +02:00
LibretroAdmin 8825eea884 Style nits 2022-10-29 19:13:17 +02:00
LibretroAdmin c1a3085939 Fix UNIX builds 2022-10-29 19:07:49 +02:00
LibretroAdmin 55daddf286 * Fix C++ comments - turn them into C comments for C files
* Some other additional style nits along the way
2022-10-29 19:05:39 +02:00
Kangmo-Ahn 3a744b7dae Extended character ime (#14559)
* Update Makefile

* Update win32_common.c

* Update input_driver.c

* Update gfx_thumbnail_path.c
2022-10-29 19:01:30 +02:00
LibretroAdmin edfc96feea Fix PSL1GHT build 2022-10-29 18:59:19 +02:00
LibretroAdmin 4854643ead (input_driver.c) Small cleanups 2022-10-29 18:52:10 +02:00
LibretroAdmin 91d7f5970b Cleanups in platform_unix.c 2022-10-29 18:37:12 +02:00
AKuHAK 3a6a34b2dd (Frontend) Fix default remaps folder for various cores: remap should be nested in config folder (#14563) 2022-10-29 16:34:08 +02:00
neil4 1dd165a3bf Fix overlay next_index for unnamed targets (#14562) 2022-10-29 16:33:34 +02:00
github-actions cab6cbca48 Fetch translations from Crowdin 2022-10-29 00:12:27 +00:00
LibretroAdmin f6866fe6ce Buildfix for Linux 2022-10-28 22:33:28 +02:00
LibretroAdmin 174b01f7d9 Remove unnecessary video_driver_is_cache_context 2022-10-28 19:36:56 +02:00
LibretroAdmin 2ec2f4719f (video_thread_wrapper) Use flags instead of bools 2022-10-28 19:21:09 +02:00
Ruben Nine 2e73b87328 Fix broken fullscreen mode in macOS Ventura by setting NS_WINDOW_COLLECTION_BEHAVIOR_FULLSCREEN_PRIMARY TO 1 << 7 as defined by NSWindowCollectionBehaviorFullScreenPrimary. (#14556) 2022-10-28 07:20:07 +02:00
github-actions 902a693bdb Fetch translations from Crowdin 2022-10-28 00:14:51 +00:00
sonninnos 194be57da1 (XMB) Add truncate playlist name option (#14553) 2022-10-27 05:42:46 +02:00
github-actions 3f53de09c1 Fetch translations from Crowdin 2022-10-27 00:14:37 +00:00
LibretroAdmin c7eee86fd5 Turn core boolean variables into flags 2022-10-27 00:29:24 +02:00
LibretroAdmin c0d6d6e750 Create video_driver_get_st_flags 2022-10-26 22:35:04 +02:00
LibretroAdmin e8f4268e6e Addendum for previous commit - buildfixes for PS4 and C89 (cg) 2022-10-26 21:29:35 +02:00
LibretroAdmin d0b3c1742d (Video) use flags for FBO passes, GL2 renderchain, etc 2022-10-26 21:21:21 +02:00
LibretroAdmin fc78f96a3a (X11) Turn boolean variables into flags 2022-10-26 19:30:36 +02:00
LibretroAdmin 8a0491b282 (Dinput) Fix Mouse L button behavior 2022-10-26 19:25:38 +02:00
LibretroAdmin 92a2c0f71a (Dinput) Turn boolean variables into flags 2022-10-26 19:22:35 +02:00
LibretroAdmin 27dbf06dfb Create g_plat_win32_flags - reduce amount of global booleans 2022-10-26 17:51:15 +02:00
LibretroAdmin 46c2a9b950 (Cocoa) small style nits; don't use NSLog 2022-10-26 17:36:58 +02:00
LibretroAdmin 18639cca6e (Win32) Create g_win32_flags - reduce amount of global booleans kept
around for state
2022-10-26 17:31:42 +02:00
github-actions b41f6b2885 Fetch translations from Crowdin 2022-10-26 00:13:59 +00:00
LibretroAdmin 94a3eba9ef Turn checked into flag for menu_entry_t 2022-10-26 00:28:57 +02:00
LibretroAdmin 299875f8b6 (Qt) Cleanups 2022-10-25 18:12:19 +02:00
LibretroAdmin 0d16eb6e10 (Menu) menu_entries - get rid of boolean variables and
turn them into flags
2022-10-25 17:22:35 +02:00
LibretroAdmin 44cb5be2ef (task_content.c) Cut down on code duplication 2022-10-25 16:32:16 +02:00
LibretroAdmin 069de60efc (Qt) Remove SSL/TLS check at startup 2022-10-25 15:42:29 +02:00
LibretroAdmin d30f16dc79 Remove cursor directory/cursor manager list - Views obsoleted
this
2022-10-25 15:21:47 +02:00
github-actions e3e0040063 Fetch translations from Crowdin 2022-10-25 00:20:48 +00:00
LibretroAdmin 18ea6fa81e Turn more boolean variables into flags for runloop
- Get rid of RARCH_CTL_IS_INITED, use runloop_get_flags instead
2022-10-24 18:16:00 +02:00
LibretroAdmin 9b7be5f2af Update CHANGES.md 2022-10-24 17:53:50 +02:00
LibretroAdmin 198be07542 Update CHANGES.md 2022-10-24 17:52:41 +02:00
LibretroAdmin 94733e4a4c Update CHANGES.md 2022-10-24 17:52:26 +02:00
LibretroAdmin 11c96ce2d3 (MaterialUI)
* Remove unused variables
* Turn loop counter variable into int
2022-10-24 16:49:01 +02:00
LibretroAdmin 3c7e4b032e (Menu drivers) Remove warnings about missing assets 2022-10-24 16:45:17 +02:00
reallibretroadmin f389c08109 (Menu) Remove unused variables 2022-10-24 16:41:37 +02:00
github-actions 3d1bcf9836 Fetch translations from Crowdin 2022-10-24 00:18:34 +00:00
github-actions 7cfa69be1b Fetch translations from Crowdin 2022-10-23 00:19:16 +00:00
github-actions 622cc61671 Fetch translations from Crowdin 2022-10-22 00:18:28 +00:00
github-actions 50e5c40c40 Fetch translations from Crowdin 2022-10-21 00:17:37 +00:00
redenvelope2000 89d9fe9981 Fixed RETROK_LMETA not working on macOS port. (#14538)
The RETROK_LMETA key was not defined in the rarch_key_map_apple_hid[].
2022-10-20 15:59:14 +02:00
redenvelope2000 c161c35738 Fixed Z/X keys not working on the macOS port. (#14539)
Need to check keyboard_mapping_blocked before using apple_key_state[].
2022-10-20 15:59:03 +02:00
hunterk a90a79fa95 revert offending function
fixes https://github.com/libretro/RetroArch/issues/14528
2022-10-20 06:29:04 +02:00
LibretroAdmin 22f43a4b75 C89_BUILD buildfix 2022-10-20 04:30:28 +02:00
github-actions 170ed8ea0f Fetch translations from Crowdin 2022-10-20 00:19:02 +00:00
Dyllan Kobal 6ade32336a Fixed error for UWP 2022-10-19 18:52:21 +02:00
Dyllan Kobal 55ce774527 Fixed the way devices were previously indexed 2022-10-19 18:52:21 +02:00
sonninnos 6c0be28b98 (Ozone) Footer improvements (#14534) 2022-10-19 03:32:21 +02:00
Keith Bowes 72a076a58d Fixed compiling with --disable-menu (#14535) 2022-10-19 03:30:52 +02:00
sonninnos 03c901dfb8 Playlist + database changes: (#14531)
- Cleanup 'entry_slot'
- Fallback label + logging
2022-10-18 21:32:54 +02:00
LibretroAdmin 07ae7ff7f1 Turn more static const variables in config.def.h into define macros 2022-10-18 13:39:21 +02:00
LibretroAdmin 57d5b8749e (Android) Enable 'Vibrate On Key Press' by default
(config.def.h) Turn some const variables into define macros
2022-10-18 12:13:47 +02:00
sonninnos 0597aa6939 Thumbnail fullscreen toggle behavior correction (#14527) 2022-10-18 10:05:01 +02:00
github-actions b846a5d792 Fetch translations from Crowdin 2022-10-18 00:18:28 +00:00
LibretroAdmin 320886f9fa Fix some function declarations 2022-10-17 19:56:32 +02:00
reallibretroadmin c594abb10d Cleanups; fixes of warnings 2022-10-17 19:29:33 +02:00
sonninnos 0cebebbfdc (Ozone) Remember selection per main tabs (#14526) 2022-10-17 16:04:54 +02:00
LibretroAdmin 840c4481ab Update CHANGES.md 2022-10-17 02:51:07 +02:00
Colin KinlochandColin Kinloch 8bbc4a90f3 (Wayland) Set correct app ID (#14521)
Signed-off-by: Colin Kinloch <[email protected]>

Signed-off-by: Colin Kinloch <[email protected]>
Co-authored-by: Colin Kinloch <[email protected]>
2022-10-17 00:06:27 +02:00
sonninnos feea90d877 (XMB) Vertical Fade fix (#14525) 2022-10-17 00:06:14 +02:00
sonninnos ababfcc0c8 (XMB) Playlist entry index fixes (#14523) 2022-10-16 23:46:27 +02:00
LibretroAdmin 415925c5dc Update CHANGES.md 2022-10-16 18:16:50 +02:00
sonninnos 3c61126578 (XMB) Remember selection per main tabs (#14519) 2022-10-16 18:15:50 +02:00
LibretroAdmin df879b52cd Bump to version 1.12.0 2022-10-16 15:41:59 +02:00
neil4 b98c53ddb7 Improve haptic feedback for input overlays (#14517)
Repurpose vibrate_on_keypress to enable device's standard keypress feedback on overlay key/button state changes

- Add keypress_vibrate function ptr to input_driver_t (only implemented on Android for now)
- (Android) Remove APP_CMD_VIBRATE_KEYPRESS
- (Android) Add doHapticFeedback, called directly to avoid latency
2022-10-16 09:58:09 +02:00
github-actions 5b08c3fc22 Fetch translations from Crowdin 2022-10-16 00:18:14 +00:00
yoshisuga cac8b82368 [iOS] Fixes to iOS toolbar, add iOS 16 lockscreen widget (#14516)
* tweaked helper bar display behavior
* tweaked ui handling
* Add iOS 16 lockscreen circular widget
2022-10-15 23:33:34 +02:00
LibretroAdmin e62abac647 Add BSV movie flags 2022-10-15 14:32:26 +02:00
sonninnos bbd6c0ae9a Add delay to savestate notifications (#14514) 2022-10-15 11:29:07 +02:00
github-actions 74d7aa3691 Fetch translations from Crowdin 2022-10-14 00:18:51 +00:00
github-actions 48bfc6d6f8 Fetch translations from Crowdin 2022-10-13 00:17:44 +00:00
Michael Burgardt 254ac65549 Add British English language option (#14504) 2022-10-12 23:26:00 +02:00
LibretroAdmin a153738bbd Create retroarch_get_flags and use it 2022-10-12 13:27:54 +02:00
LibretroAdmin abf8bdc660 Update meta.xml 2022-10-12 12:46:57 +02:00
LibretroAdmin f90b71b2ed Update meta.xml 2022-10-12 12:46:17 +02:00
Giovanni Cascione 18b3997a15 mali_fbdev: change bools to flags (#14508) 2022-10-12 12:12:16 +02:00
sonninnos 50ace058ce Config appendconfig + saving + logging (#14505)
* Config override + logging cleanups

* 'config_save_on_exit' cleanup
2022-10-12 11:37:36 +02:00
github-actions 8b39654368 Fetch translations from Crowdin 2022-10-11 00:18:14 +00:00
LibretroAdmin 41de5ec80b Cleanups for runloop_state grabbing 2022-10-10 20:32:46 +02:00
LibretroAdmin da68e73f94 Get rid of some RARCH_CTL_ commands 2022-10-10 20:14:54 +02:00
LibretroAdmin cc3a339011 (Runloop) Use more flags 2022-10-10 19:54:54 +02:00
LibretroAdmin 2371e5cbd2 (Runloop) Turn more bools into flags 2022-10-10 18:53:55 +02:00
LibretroAdmin 78ffb973b1 Add WIIU ifdef for socket_connect_with_timeout and revert (#14503)
else default codepath
2022-10-10 18:04:05 +02:00
LibretroAdmin d100e73780 Use more runloop flags 2022-10-10 08:59:27 +02:00
Bernhard Schelling c9bbe7683f Add View feature (#14467)
* Add View feature
Add saving of a filter set in the Explore menu into a so called "View" file which then gets listed alongside playlists.
This also adds the ability to filter a category by range in the Explore menu and not just filter on exact matches.

* Menu improvements for explore and views

* Collapse ozone sidebar in view

* Fix problems with the sidebar in explore/view

* Ignore view files in the Qt playlists menu

* Add missing semicolon

* Support downloading thumbnails in views
2022-10-10 06:36:02 +02:00
LibretroAdmin 076a1a398c (Runloop) Turn some boolean variables into flags 2022-10-10 04:37:17 +02:00
LibretroAdmin 2218ea1d96 Buildfix for libnx 2022-10-10 01:49:31 +02:00
GABO1423 baaf8e03fa (UWP) Another Buildfix (#14501) 2022-10-10 00:06:49 +02:00
LibretroAdmin 2cddea21f8 * Cleanups
* Less pointer grabbing (dispwidget_get_ptr)
2022-10-09 22:53:39 +02:00
LibretroAdmin 479e3b23d9 Turn content_get_status into content_get_flags 2022-10-09 20:32:39 +02:00
LibretroAdmin d3384fd89d Fix parameter names omitted 2022-10-09 10:25:35 +02:00
LibretroAdmin d5a6c4f150 (content) use flags for content_state
(xaudio2) Use flags
2022-10-09 10:20:43 +02:00
github-actions 73f766f133 Fetch translations from Crowdin 2022-10-09 00:16:58 +00:00
LibretroAdmin 385029786c Simplify code part 2022-10-08 23:08:17 +02:00
LibretroAdmin a1edae126c Fix Pending Quick Menu 2022-10-08 23:01:42 +02:00
LibretroAdmin d506210fbe (menu_driver.c) Use flags instead of bools (#14500)
* (menu_driver.c) Use flags instead of bools
2022-10-08 22:52:18 +02:00
Giovanni Cascione fd2a026f96 mali_fbdev: add conditional support for gles3 (#14494) 2022-10-08 19:05:26 +02:00
LibretroAdmin fcbd72dbf3 Use flags pt4 (#14497)
* * Use flags for rarch_state
* Get rid of ^M linebreaks in retroarch_types.h

* Buildfixes for consoles

* (audio driver) use flags instead of bools

* (video) Use flags instead of bools

* Rewrite input driver state bools into flags
2022-10-08 10:39:15 +02:00
gblues 7f8d358f17 WIIU: Add some missing default directories (#14498)
There's a bunch of directories that should have defaults, that don't,
which causes a few issues.

Defaults added:
- thumbnails
- overlays
- screenshots
- autoconfig
2022-10-08 07:03:42 +02:00
github-actions da06989296 Fetch translations from Crowdin 2022-10-08 00:17:38 +00:00
LibretroAdmin f40d157571 Use flags pt3 (#14491)
* (Vulkan) Use flags for vulkan_emulated_mailbox

* Use flags for vk_texture

* dispgfx_widget - use flags instead of bools

* (Autoconfig) Use flags
2022-10-07 11:08:17 +02:00
gblues c51b1491ef Get mkdir working on wiiu (#14490)
== DETAILS
Looks like Wii U's mkdir() implementation doesn't like trailing
slashes either.

Since we already have an implementation to handle this, I just added
Wii U to it.
2022-10-07 06:19:54 +02:00
GABO1423 df8571b3ca (UWP) Build Fix (#14489) 2022-10-07 02:56:07 +02:00
LibretroAdmin 83c1e502ba (display servers) Use flags instead of bools 2022-10-07 02:40:19 +02:00
github-actions 903fcffe64 Fetch translations from Crowdin 2022-10-07 00:20:33 +00:00
LibretroAdmin 91119d038f (gfx_display/gfx_animation) Use flags instead of bools (#14488)
* (gfx_display/gfx_animation) Use flags instead of bools
* (task_save) Use flags instead of bools
2022-10-07 00:10:32 +02:00
LibretroAdmin 4f071e47c7 screenshot_task_state - use flags instead of bools 2022-10-06 20:57:07 +02:00
LibretroAdmin 28f55845b6 * database_info cleanups:
- database_cursor_close's return value was never used, and doesn't
necessitate a function either
- some other misc. cleanups
2022-10-06 19:43:44 +02:00
LibretroAdmin cc199b71db Update CHANGES.md 2022-10-06 19:28:28 +02:00
LibretroAdmin 951b98fe1b Bools to flags (#14486)
* (D3D11) Use flags instead of bools

* (RPNG) Use flags

* Simplify rpng_is_valid

* (rpng_is_valid) Prevent potential NULL pointer dereference
(D3D11) Some whitespacing changes/code nits

* (task_pl_thumbnail_download.c) Simplify some code
2022-10-06 19:26:38 +02:00
gblues 714878783a Fix socket_connect_with_timeout for WIIU (#14483)
== DETAILS
Previous work to clean up the HTTP networking code surfaced a bug
in `socket_connect_with_timeout()` that caused connections to
immediately fail. Specifically, achievements stopped working because
the http task code path was rewritten to use
`socket_connect_with_timeout` instead of `socket_connect`.

The bug appears to come down to an unsupported socket option. The final
check is to try to read `SO_ERROR` from the socket, and on WIIU the
`getsockopt()` call returns -1 and sets `lastsocketerr()` (WIIU's
equivalent to errno) to 16.

The fix is to change the logic to only abort the connection if that
`getsockopt()` call succeeds *and* the error is set.
2022-10-06 17:01:19 +02:00
LibretroAdmin 0bdc761adb Buildfix for previous commit 2022-10-06 09:32:26 +02:00
LibretroAdmin 30eb0edcf8 Use flags for some structs instead of tons of bools - less state/variables to bookkeep,
less memory used
2022-10-06 06:53:13 +02:00
LibretroAdmin 141c33ceb5 (Qt/Logging) Increase log buffer to 2048 characters - Vulkan
validation layer messages output correctly.
2022-10-06 03:19:28 +02:00
LibretroAdmin fbf55a1999 Update CHANGES.md 2022-10-06 01:58:42 +02:00
LibretroAdmin b3bb62881a Disable poll support for MSVC 2010 and earlier 2022-10-06 01:27:27 +02:00
LibretroAdmin 92e996e272 Revert "(Win32/Sockets/Networking) WSAPoll is only available since Windows Vista; disable"
This reverts commit d832ce15d6.
2022-10-06 00:46:33 +02:00
sonninnos 8e9d19568c Unload screenshot widget texture early (#14482) 2022-10-06 00:06:41 +02:00
LibretroAdmin d832ce15d6 (Win32/Sockets/Networking) WSAPoll is only available since Windows Vista; disable
NETWORK_HAVE_POLL for MSVC2003/2005/2010
2022-10-05 23:54:25 +02:00
LibretroAdmin f8a9b0a197 Combine bit setting 2022-10-05 20:42:30 +02:00
LibretroAdmin e8c53cad10 Update CHANGES.md 2022-10-05 18:45:55 +02:00
LibretroAdmin d0c6dfee0b Cleanup bitmask setting 2022-10-05 18:43:58 +02:00
LibretroAdmin b2521c53ae Filebrowser - fix regression #14425 2022-10-05 17:31:21 +02:00
LibretroAdmin 6447c6c39b (dingux_utils.c) Style nits 2022-10-05 06:45:40 +02:00
LibretroAdmin 7d956b611c rarch_setting - we can downgrade flags and free_flags to 32bit
since the flags don't come anywhere near close to 64 unique flags
2022-10-05 04:34:47 +02:00
LibretroAdmin ffa1ae4143 setting_list.c - implement cmd_trigger_event_triggered as flag 2022-10-05 04:23:02 +02:00
github-actions acc2128a6e Fetch translations from Crowdin 2022-10-05 00:18:02 +00:00
sonninnos 3a0d8cbc50 (Vulkan) Fix screenshot widget crash when ticker animating (#14475) 2022-10-05 02:09:56 +02:00
GABO1423 236621d6ac (UWP) Bump up Version Number, again (#14472) 2022-10-05 00:06:42 +02:00
LibretroAdmin ab1f21ef78 (Ozone/MaterialUI) sublabel lines will not ever go beyond uint8_t
max value, so change variable types from 32bit to 8bit
2022-10-04 23:58:04 +02:00
LibretroAdmin fa40754585 (MIST/STEAM/STEAMDECK) Don't expose Black Frame Insertion if we are
running RetroArch on a Steam Deck
2022-10-04 22:59:57 +02:00
LibretroAdmin e9ad1e494f Update CODING-GUIDELINES 2022-10-04 17:53:52 +02:00
LibretroAdmin 1eebd1196e Update CODING-GUIDELINES 2022-10-04 17:26:23 +02:00
LibretroAdmin 1a46943a76 Update CODING-GUIDELINES 2022-10-04 17:24:39 +02:00
LibretroAdmin 088ef4f6f9 Update CODING-GUIDELINES 2022-10-04 17:23:44 +02:00
LibretroAdmin 389ef31a8f Bump up to version 1.11.1 - point release 2022-10-04 07:46:48 +02:00
github-actions 8fb91ce1af Fetch translations from Crowdin 2022-10-04 00:18:09 +00:00
LibretroAdmin 12cc56f712 netplay_frontend.c - innocuous style nits - direct initialization of
variables where possible, no brackets for one line, move local variables
to proper scope, etc
2022-10-03 23:05:50 +02:00
LibretroAdmin 185e1af39b (MaterialUI) Prevent pointless self-assignment with tertiary operators 2022-10-03 21:41:39 +02:00
LibretroAdmin 2429c472b6 Buildfix for previous commit 2022-10-03 19:18:52 +02:00
LibretroAdmin e5897caa8f Cut down on menu_displaylist_info_t size - use flags instead of all
these boolean members
2022-10-03 18:13:32 +02:00
LibretroAdmin 8c49eed56c rarch_setting - remove dont_use_enum_idx_representation value -
set it as a flag instead
2022-10-03 15:42:36 +02:00
LibretroAdmin 0874a41e36 Update CHANGES.md 2022-10-03 15:13:50 +02:00
sonninnos 4fe477ee39 Avoid 'video_gpu_screenshot' with savestates (#14464) 2022-10-03 15:13:01 +02:00
Cthulhu-throwaway d774256e0d (Network) Add the const qualifier to some function parameters (#14463) 2022-10-03 07:35:37 +02:00
LibretroAdmin 5ad204bea5 (Wayland) Turn more functions static 2022-10-03 03:38:56 +02:00
LibretroAdmin 91f4892cbe (wayland) Cleanups; turn functions static and other nits 2022-10-03 03:36:12 +02:00
LibretroAdmin 0a8ff5d15d (menu_setting) enforce_minrange and enforce_maxrange become flags,
and make remainder of minrange/maxrange local variables of type
float
2022-10-03 02:28:12 +02:00
github-actions cb280dcf5e Fetch translations from Crowdin 2022-10-03 00:17:05 +00:00
LibretroAdmin 13cc6b7f46 Use float values now that setting min/max are float instead of double 2022-10-03 01:53:58 +02:00
LibretroAdmin 4672c5a5c0 Update CHANGES.md 2022-10-03 01:19:31 +02:00
Cthulhu-throwaway daf8cb9bc8 (Netplay) Add a private or CGNAT address warning to UPnP (#14461) 2022-10-03 01:18:34 +02:00
LibretroAdmin 5627a09e0d rarch_setting - downgrade min/max from double to float 2022-10-03 01:15:48 +02:00
LibretroAdmin 7df0157af5 Fix #14460 - ./configure --enable-network_video option fails to build 2022-10-02 22:33:09 +02:00
LibretroAdmin 284466b04b Update CHANGES.md 2022-10-02 15:58:56 +02:00
reallibretroadmin 0033224c25 Fix some implicit conversion signedness warnings 2022-10-02 03:22:34 +02:00
github-actions 4253b06f2d Fetch translations from Crowdin 2022-10-02 00:18:42 +00:00
sonninnos 25f5d9ae2a Fix DEFAULT_FILL_TITLE_MACRO (#14456) 2022-10-01 23:51:25 +02:00
reallibretroadmin cd0d0eb541 Can save config now without WINRT ifdef - we do config file deinit
AFTER ui companion driver deinit now
2022-10-01 23:37:49 +02:00
LibretroAdmin 741b54d4be Ifdef this for UWP for now since this will segfault on OSX - we
need a more uniform way of tearing things down without ifdefs
for all platforms
2022-10-01 23:17:04 +02:00
libretroadmin 13ac88c9df (Metal common) Cleanups 2022-10-01 21:41:32 +02:00
LibretroAdmin 86dccbf1d6 Buildfix 2022-10-01 18:47:41 +02:00
LibretroAdmin ace21d28f7 Fix C++ comments 2022-10-01 17:56:16 +02:00
LibretroAdmin 6be8dccd46 (UWP) Style nits/cleanups 2022-10-01 15:46:09 +02:00
Bashar Astifan b93599c7e0 UWP OnSuspending and save on quit fix (#14452)
* Update uwp_main.cpp

* Update retroarch.c
2022-10-01 14:28:23 +02:00
LibretroAdmin 5bfe70221c Revert "UWP OnSuspending crash fix (#14372)"
This reverts commit 6226d0442f.
2022-10-01 00:27:22 +02:00
LibretroAdmin 4251eb5f61 Turn uwp_mkdir_impl function static 2022-09-30 17:50:07 +02:00
GABO1423 9586d679a8 (UWP) Bump up version number (#14448)
* (UWP) Bump Version Number for msvc2019

* (UWP) Bump up Version Number for msvc2017
2022-09-30 03:04:45 +02:00
LibretroAdmin fcdb383dc6 Update CHANGES.md 2022-09-29 22:59:02 +02:00
LibretroAdmin d3cb2b2ba9 Bump up to 1.11.0 2022-09-29 22:49:56 +02:00
LibretroAdmin 3c81e21589 Massive changelog for 1.11.0 2022-09-29 21:18:48 +02:00
github-actions a16725f47c Fetch translations from Crowdin 2022-09-28 00:21:25 +00:00
Cthulhu-throwaway f584f7a5f8 (Netplay) Fix for another incorrect operator (#14444) 2022-09-27 13:01:52 +02:00
github-actions 3cdccb6b90 Fetch translations from Crowdin 2022-09-27 00:20:42 +00:00
Cthulhu-throwaway ecccdd5484 (Netplay) Fix for an incorrect operator (#14443) 2022-09-26 17:57:30 +02:00
LibretroAdmin 1571035fb7 (DS3/connect) Fix some warnings 2022-09-26 16:12:31 +02:00
gblues a4b934b71a Fix some HID bugs (#14435)
* Fix Sixaxis gamepad operation

== DETAILS
It looks like commit 78e7d23c14 broke
the DualShock. Sorry, @revvv, but this is probably going to break the
Retrode driver. We'll need to figure out a different solution.

* Fix a bunch of HID implementations

== DETAILS
As mentioned in the previous commit, the thing that broke the DS3
driver was a change to the wiiu HID handler, which did some pointer
math on the data buffer.

The thing is.. there's no reason to do that pointer math. Yet, I found
the same thing on almost every other HID driver: OSX, libusb, wiiusb.
The only other HID driver that did not do this was the Bluetooth
HID driver.

It doesn't make any sense. The only reason it doesn't crash is because
the memory right before the buffer is valid memory.

Change summary:
- remove the weird pointer math from all HID controllers
- remove the `#ifdef apple ...` in the ds3 and gamecube adapter
  drivers, because it's no longer needed.
- in the pad packet handlers, decrement data buffer offset references
  to account for the removal of the buffer manipulation.

* Fix DualShock 4

== DETAILS
Should've only subtracted 1, not 2; and now the pad works.

Also, added a PID to cover newer model DS4s. I picked "R2" out of the air
for the constant.

Tested on Mac OS

* Really really fix iohidmanager_set_report

A huge apology to @23rd for insulting your fix. I was wrong to call you
wrong.

That left the question: why did that change break the DS3?

Well, it's because `IOHIDDeviceSetReport` expects the report buffer to be
just the report. All of RA's HID SetReport calls include the report number
in the first byte, so we have to trim that off.

We actually do this in a different invocation of `IOHIDDeviceSetReport`
elsewhere in the file! This commit applies that same logic to
`iohidmanager_set_report`

This has two benefits:

1. The DS3 works
2. The DS3 no longer requres the user to press the PS button to activate
   it the first time. You plug it in and it Just Works, just like on Wii U.
2022-09-26 14:32:49 +02:00
sonninnos e902df3b0d (XMB) Add options for hiding header and horizontal title margin (#14439) 2022-09-26 12:57:20 +02:00
github-actions 614e502b41 Fetch translations from Crowdin 2022-09-26 00:16:23 +00:00
MrHuu a878bd3f95 (Network) Adapt POLL for 3DS platform (#14431) 2022-09-25 17:15:56 +02:00
Bobby Smith 440264778d Fix incorrect lines in .cht files for 'cheat10' and above (#14436) 2022-09-25 17:15:07 +02:00
GABO1423 403eaef516 (UWP) Remove expandedResources (#14438) 2022-09-25 17:14:52 +02:00
github-actions 08ccc59e3c Fetch translations from Crowdin 2022-09-23 00:15:49 +00:00
Bobby Smith cd93bdc058 Fix "Windowed Scale" dropdown menu (#14433) 2022-09-22 12:58:56 +02:00
github-actions 0973e8d4b0 Fetch translations from Crowdin 2022-09-22 00:15:00 +00:00
github-actions ab57d3cab7 Fetch translations from Crowdin 2022-09-20 00:18:11 +00:00
23rd 171a79e879 Fixed sending of report id to HID device on macOS. (#14430) 2022-09-19 18:01:27 +02:00
github-actions 568d788d54 Fetch translations from Crowdin 2022-09-19 00:13:32 +00:00
Filipe Azevedo c10a4d632f Fix label sanitization (#14428)
This simplify and trim whitespaces left.
ie, starting, trailing and multiple consecutive whitespaces are now
removed.
2022-09-18 19:25:21 +02:00
github-actions e8f4425eed Fetch translations from Crowdin 2022-09-18 00:14:04 +00:00
yesfish c1309a34c2 Fix video_layout fbo (#14418) 2022-09-18 01:16:05 +02:00
sonninnos b014a9ef98 Move PLAYLIST_SHOW_HISTORY_ICONS upwards (#14427) 2022-09-18 01:15:33 +02:00
Cthulhu-throwaway 9346a15864 (Netplay) Move some timed features from frame count to a timer (#14419) 2022-09-18 01:15:19 +02:00
MrHuu dbba69a2d1 (Network) Check connect errno for successful connection (#14420) 2022-09-18 01:15:09 +02:00
github-actions 83ce6f42d9 Fetch translations from Crowdin 2022-09-16 00:15:20 +00:00
sonninnos 8842603165 Online Updater menu reorganizing (#14414) 2022-09-15 09:24:35 +02:00
github-actions 262d9720fe Fetch translations from Crowdin 2022-09-15 00:13:48 +00:00
Jamiras ec333e261f Update wording for hardcore (#14413) 2022-09-14 02:42:35 +02:00
github-actions c16a50f1dd Fetch translations from Crowdin 2022-09-14 00:14:28 +00:00
LibretroAdmin be044c09dd Disable Feral GameMode for Android - only available on Linux 2022-09-13 19:29:45 +02:00
LibretroAdmin ce8389d4a6 (menu_setting.c) Remove code duplicated functions 2022-09-13 11:06:37 +02:00
LibretroAdmin b32b1f277b Disable HAVE_IFINFO for MSVC 2003/2005 builds 2022-09-13 10:53:15 +02:00
LibretroAdmin 045fd38f19 Reduce tertiary operators 2022-09-13 10:28:03 +02:00
LibretroAdmin c1709f2218 (gfx_widget_load_content_animation) Get rid of strlen 2022-09-13 09:14:43 +02:00
LibretroAdmin c5d70d49e5 (gfx_widgets_progress_message) Cut down on another strlen 2022-09-13 03:58:54 +02:00
LibretroAdmin 5e8987839e (gfx_widgets) Cut down on strlens 2022-09-13 03:57:05 +02:00
github-actions 663b5eed9d Fetch translations from Crowdin 2022-09-13 00:13:53 +00:00
tr12345 8cc866b051 New Menu Items for disabling Info & Search buttons in the menu (#14259)
* New Menu Items Disable Info & Search

Add menu options for disabling Info and   Search buttons

* Update msg_hash_us.h

Update Sublabels

* Update menu_setting.c

Set Advanced flag for new settings
2022-09-12 23:17:24 +02:00
LibretroAdmin 36d60f6bf4 (Ozone/MaterialUI/RGUI/XMB) Get rid of some tertiary operators - was basically reassigning the same
value
2022-09-12 22:20:03 +02:00
MrHuu 911308327d (3DS) Set default bottom font values (#14404) 2022-09-12 01:44:02 +02:00
LibretroAdmin 75757d7d02 Remove unused DXGI inline functions 2022-09-11 23:15:25 +02:00
LibretroAdmin da094eeb2f Remove unused XMB_DEBUG 2022-09-11 19:53:44 +02:00
gblues cdd39a6364 MacOS: Fix Sixaxis (DS3) support (#14402)
* MacOS: Fix sixaxis on MacOS 12.x

== DETAILS
Mac OS 12.x "Monterey" dropped some built-in support for the
Sixaxis controller--exactly what changed is unclear, but other
projects reported similar issues with the OS.

This commit ports the work done on SDL, which is basically to
read two feature reports after writing out the activation report.
I think we did this at one point in the past, but it got lost
among HID driver rewrites.

I've tested this locally and it resolves the issue; after connecting
the sixaxis and pressing the Playstation button, the pad is registered
and works successfully.

I have not tested this on other platforms.

* Gracefully handle incomplete HID implementations

== DETAILS
Not all HID drivers implement all HID methods; since this controller
has a magic sequence that requires the ability to set and get HID
reports, we need to make sure we don't crash if we're running on
an incomplete implementation.

- Add a null check for the driver methods and log useful info if checks
  fail
- Fix minor formatting
2022-09-11 09:40:38 +02:00
MrHuu 422d2fcf12 (3DS) Fix CIA installation issues (#14399)
- Fixes CIA installation failing
- Add CIA installation progress stats
2022-09-11 02:57:31 +02:00
LibretroAdmin 14f4f35445 Exclude unused HAVE_HID for Miyoo and RetroFW 2022-09-10 00:01:20 +02:00
LibretroAdmin 2dec44188b (connect_ps3.c) Buildfixg 2022-09-09 23:58:00 +02:00
LibretroAdmin 2bdb5d488b (connect/ps3) Remove unused variable, style nits 2022-09-09 21:26:47 +02:00
LibretroAdmin f5fc1fb24e Fix build 2022-09-09 19:26:21 +02:00
LibretroAdmin 4cd63c20f4 (input/connect) Use calloc for setting DualShock3 struct 2022-09-09 19:22:29 +02:00
github-actions a665498775 Fetch translations from Crowdin 2022-09-09 00:15:05 +00:00
github-actions ad9836a5f8 Fetch translations from Crowdin 2022-09-08 00:15:22 +00:00
github-actions 959d077649 Fetch translations from Crowdin 2022-09-07 00:12:34 +00:00
sonninnos 4806105a2c Logging cleanups (#14393) 2022-09-06 18:48:58 +02:00
LibretroAdmin bafbbc8a1a Don't bake in OpenAL and libcaca by default unless explicitly enabled
with configure switch.
Reasons:
* Libcaca video driver support seems half baked, can't even render RGUI
right now on Windows. Not worth the troubleshooting for regular users or
the DLL linkage (which adds to filesize) until further developed
* Better native audio driver alternatives exist for OpenAL on both Windows and Linux
2022-09-06 17:40:36 +02:00
Jamiras 906d885b8e allow creating auto savestate in hardcore (#14392) 2022-09-06 05:04:54 +02:00
Jamiras 3601610b6f prevent invalid memory reference if game has achievements but core doesn't expose memory (#14391) 2022-09-06 05:04:29 +02:00
github-actions 84f599503d Fetch translations from Crowdin 2022-09-06 00:19:38 +00:00
LibretroAdmin 98ee07eaa0 (MaterialUI) Silence warning 2022-09-06 01:57:08 +02:00
Jamiras 43f5812a18 show achievement badge icons in glui driver (#14390) 2022-09-06 01:53:22 +02:00
Bobby Smith 82cac0f9ba Fix Redump bin/cue scan for some DC games + add RVZ/WIA scan support for GC/Wii (#14380) 2022-09-06 01:52:01 +02:00
MrHuu b88c297f8e (Network) Don't call getsockopt on 3DS platform (#14389) 2022-09-06 01:51:15 +02:00
MrHuu 1c31efaa91 (3DS) Only enable internal counter with CONSOLE_LOG defined (#14388) 2022-09-05 20:31:23 +02:00
LibretroAdmin 7ae555a51d (X11/Xinerama) Style nits; slightly optimize x11_get_metrics 2022-09-05 19:44:15 +02:00
sonninnos 87457eb678 Hide 'Notification Visibility' when notifications are disabled (#14386) 2022-09-05 19:11:39 +02:00
LibretroAdmin 6b4e20d414 (deps/switchres) Remove unused files grid.cpp and examples/ 2022-09-05 18:39:45 +02:00
LibretroAdmin ddeef350bd (X11) Simplify HAVE_XF86VM code ifdefs some more
(CodeQL) Take out for now while it fails to build
2022-09-05 18:36:45 +02:00
LibretroAdmin 77f3e20e3c (CodeQL) Only use 'cpp' language
(X11) Use HAVE_XF86VM for XFree86-VidMode X extension library
2022-09-05 18:26:08 +02:00
LibretroAdmin 5e985f0553 Create codeql.yml 2022-09-05 18:00:04 +02:00
LibretroAdmin 84868ab21f (Setting) Windowed scale should be an integer instead of float 2022-09-05 04:03:04 +02:00
github-actions c9ab8a6cbb Fetch translations from Crowdin 2022-09-05 00:15:29 +00:00
sonninnos c4c55077a1 Allow On-Demand Thumbnails in Explore menu (#14385) 2022-09-05 00:01:38 +02:00
Filipe Azevedo 788d602ec7 Fix various vfs / file stream issues (#14384)
* VFS: Fix stream size after truncate / write calls
Those changes ensure the stream size get updated correctly after a
truncate or write call.
* File Stream: Fix file stream eof
After a write call, EOF would be incorrect because it was only updated
after a read call.
2022-09-04 23:11:54 +02:00
LibretroAdmin 3bd36941a6 (Menu) Allow the user to use volume up/down/mute hotkeys from within the menu 2022-09-04 21:01:18 +02:00
LibretroAdmin 1e035b9385 (file_list) Get rid of superfluous small functions 2022-09-04 17:52:06 +02:00
LibretroAdmin dfb4b603e4 Get rid of superfluous wrapper function file_list_get_at_offset 2022-09-04 07:30:21 +02:00
LibretroAdmin 1a24bfe60c (file_list) Get rid of useless wrapper functions 2022-09-04 05:39:16 +02:00
LibretroAdmin 866ce4c50d (Menu drivers) Get rid of verbosity.h include 2022-09-04 04:58:22 +02:00
LibretroAdmin bbdc6d36da (qb) Disable HAVE_HID by default for now for Windows/Linux as long
as there are no working backends for both
2022-09-04 02:28:56 +02:00
github-actions e1990ba0dd Fetch translations from Crowdin 2022-09-04 00:13:08 +00:00
LibretroAdmin dfff8e127a Simplify joypad_connection.c 2022-09-04 02:03:20 +02:00
MrHuu 835bbc6f68 (3DS) Set bottom_asset directory default (#14376)
- Fix default value while generating retroarch.cfg
- Update 'Asset not found' error message
2022-09-03 20:40:01 +02:00
LibretroAdmin 532840c4b8 Change size of path_config_append_file to PATH_MAX_LENGTH - fixes #12906 2022-09-03 17:27:16 +02:00
LibretroAdmin 3abd414656 Backport https://github.com/LazyBumHorse/RetroArch/commit/ebe5f2cc3d368e862b22524e357f1b226e049885 -
Remove config_file_exists, replace with path_is_valid
2022-09-03 06:35:41 +02:00
LibretroAdmin 8b5c5358ad (playlists) Small cleanups:
- Don't need to NULL terminate strings passed to strlcpy
- Misc. code cleanups
2022-09-03 06:31:25 +02:00
LibretroAdmin 5d36d80318 Fix compilation with ./configure --disable-builtinglslang - was
missing linking against -lMachineIndependent and -lGenericCodeGen
static libs
2022-09-03 04:04:00 +02:00
LibretroAdmin bea2eb719b write_file_with_random_name - don't cast strlen return result to
different type
2022-09-03 03:38:14 +02:00
github-actions 57f3e4ca42 Fetch translations from Crowdin 2022-09-03 00:11:50 +00:00
LibretroAdmin ab39c6c2c8 * VFS:
- Simplify retro_vfs_file_seek_impl
- Some cleanups of vfs_implementation_uwp.cpp - backport some of the
improvements made to the non-UWP version
2022-09-03 01:42:57 +02:00
LibretroAdmin 654203be0a (Autosave) Change/improve exit behavior of autosave thread -
if condition variable is signaled, the loop is ran another
last time so we can do a final check/save before stopping the thread.
Old commit courtesy of tobiasjakobi
2022-09-03 00:21:58 +02:00
LibretroAdmin 8f14143859 Don't do implicit memsets for struct timespec - always has only
a tv_sec and tv_nsec member field which always get set
2022-09-02 23:47:58 +02:00
LibretroAdmin 2463a63c78 (task_save.c) Miscellaneous cleanups:
* Remove unused return type of one function
* Remove some TODO/FIXME notes
* Small style nits
2022-09-02 23:35:48 +02:00
Bashar Astifan 6226d0442f UWP OnSuspending crash fix (#14372) 2022-09-02 13:26:11 +02:00
LibretroAdmin 8c3acb7adb Make record_drivers_init_first more robust 2022-09-02 03:45:12 +02:00
github-actions bfcdc7a764 Fetch translations from Crowdin 2022-09-02 00:12:26 +00:00
LibretroAdmin 55391ac29f Plug some more implication conversion of return value of strlen 2022-09-02 01:22:12 +02:00
LibretroAdmin 328ff1f0e9 Avoid one implicit conversion warning 2022-09-02 01:18:50 +02:00
LibretroAdmin 0ffdd14940 Change msg_len of font driver to size_t - avoids all the type
casting/conversion
2022-09-02 01:10:28 +02:00
LibretroAdmin 77e83a4e60 config_save_file - simplification in snprintf call in loop 2022-09-01 18:38:20 +02:00
LibretroAdmin 6f84af2efa * Simplify menu_entries_get_title
* Add TODO/FIXME - localize strings to hardcoded strings
* Some more simplifications in for loops
2022-09-01 15:42:25 +02:00
LibretroAdmin 003cea5d42 Fix some 'implicit conversion loses precision' warnings 2022-09-01 15:15:48 +02:00
LibretroAdmin 793370aa97 Reduce snprintf (#14371)
* Don't do snprintf calls in loops that can be done once outside
* Try to prevent some msg_hash_to_str calls in loops
* Add FIXME/TODO localize notes to hardcoded strings
* Reduce some snprintf calls by moving them out of if/else blocks
* Simplify early return path for one function
2022-09-01 14:54:07 +02:00
LibretroAdmin 60030e373e Reduce snprintfs + assorted cleanups (#14369)
* Reduce snprintf and/or use them only for concatenating the
string formatting of numbers/values
* Reduce snprintfs
* Use snprintf for concatenation at parts
* * We don't need to NULL-terminate strings that get passed to strlcpy/strlcat
and friends
* Use snprintf for concatenation in certain instances
* Do away with some string intermediary copies where we can avoid it
* Fix warning unused variable
* * Reduce snprintf calls
* Rewrite snprintf calls into strlcpy where possible
* Use snprintf for concatenation when necessary
* Do away with some string intermediary copies in task_translation.c
* run_translation_service - make switch slightly smaller
2022-09-01 04:17:07 +02:00
LibretroAdmin 67afa426e5 Merge pull request #14367 from sonninnos/menu-paging
Menu paging navigation adjustments
2022-08-31 22:47:26 +02:00
LibretroAdmin 9daf072901 Merge pull request #14368 from Themaister/master
Vulkan: Fix more validation errors
2022-08-31 22:39:27 +02:00
Themaister a058c78fd0 Attempt to fix validation errors with HDR swapchain.
Always use final render pass type equal to swapchain format. Use more
direct logic to expose if filter chain emits HDR10 color space or not.
2022-08-31 21:59:25 +02:00
Themaister 3a25b53175 Fix more validation errors. 2022-08-31 21:03:07 +02:00
sonninnos 9b60e6c993 Menu paging navigation adjustments 2022-08-31 21:34:47 +03:00
LibretroAdmin 06ab11d3e5 Merge pull request #14366 from Themaister/master
Vulkan: Fix some validation errors
2022-08-31 20:25:30 +02:00
Themaister f508a6a87f Fix some potential validation errors in HDR code. 2022-08-31 19:57:54 +02:00
Themaister f9eda02a74 Fix leak of HDR UBO buffer. 2022-08-31 19:46:11 +02:00
Themaister d6413f2a43 Automatically mark buffer/images/memory with names. 2022-08-31 19:46:11 +02:00
Themaister d9088dd2a9 Add helpers to mark object names automatically.
Can be trivially extended as required.
2022-08-31 19:45:33 +02:00
Themaister 6038d503c2 Move over to VK_EXT_debug_utils.
Debug marker is deprecated years ago.
2022-08-31 19:45:21 +02:00
LibretroAdmin fd41b0f90c RARCH_LOG_V - increase buffer size from 256 to 1024, otherwise
Vulkan log messages get truncated
2022-08-31 16:38:30 +02:00
sonninnos a96c5f77c8 (Ozone/XMB/RGUI) Explore menu thumbnails (#14365) 2022-08-31 14:42:10 +02:00
github-actions 08fe9be7d1 Fetch translations from Crowdin 2022-08-31 00:14:12 +00:00
LibretroAdmin 56f66f68e2 Fix memory usage being shown alone 2022-08-29 21:58:36 +02:00
LibretroAdmin 8f1389c067 (GX) Fix potential datarace (#13795) 2022-08-29 18:31:14 +02:00
LibretroAdmin ef0e9ccc38 (MaterialUI/RGUI/XMB) Less snprintf calls
(menu_displaylist.c) Do away with one less strlen by using
the return value of snprintf here instead
2022-08-29 14:38:26 +02:00
LibretroAdmin 08154e2656 (task_autodetect.c) Use snprintfs for concatenating strings (and only
use them for formatting numbers/values)
2022-08-29 14:05:16 +02:00
LibretroAdmin 8e949c516e (video_driver_frame) Do away with a lot of string intermediary copies
for formatting the status text
2022-08-29 13:29:11 +02:00
LibretroAdmin 200897f61e (configuration.c) Use snprintf in specific instances for concatenation 2022-08-29 12:40:25 +02:00
LibretroAdmin 22a12c9861 vulkan_context_init_device - simplify some string concatenation 2022-08-29 12:09:40 +02:00
LibretroAdmin 12bc84bc08 * Add TODO/FIXME notes for localization
* Turn some trivial snprintf calls into strlcpy/strlcat
2022-08-29 11:41:49 +02:00
LibretroAdmin fcbc71fef8 retro_vfs_opendir_impl - one less unnecessary strlen for Win32 2022-08-29 10:04:18 +02:00
github-actions 72eb52a5bc Fetch translations from Crowdin 2022-08-28 00:15:21 +00:00
LibretroAdmin 8b3e5b66bc Silence warning 2022-08-27 18:18:43 +02:00
LibretroAdmin 86c22742b3 (libnx/lakka switch) Another buildfix 2022-08-27 18:13:53 +02:00
LibretroAdmin ee672bf785 Buildfixes for libnx/lakka switch 2022-08-27 17:56:10 +02:00
LibretroAdmin b4f0b2827f Remove another unused variable warning 2022-08-27 17:53:43 +02:00
LibretroAdmin fabccce437 Silence some unused variable warnings 2022-08-27 17:52:19 +02:00
LibretroAdmin f1ff92c881 * menu_entries_append and menu_entries_append_enum are now combined into
one - if you set the last parameter to a valid 'rarch_setting_t' pointer
and enum_msg to MSG_UNKNOWN, you will get the previous menu_entries_append
behavior
* Renamed remaining function to menu_entries_append so that we have one
consistent way of adding menu entries instead of two
Reduces some code duplication significantly
2022-08-27 17:40:52 +02:00
LibretroAdmin e6fd2c9cdb (Win32) Do optimization for Windows where we only update the title
when the previous title differs from the current title
(X11) Have to roll back the previous title optimization/less calls to XChangeProperty,
because the title is lost upon toggling between fullscreen/windowed and is no longer
set
2022-08-27 16:16:24 +02:00
LibretroAdmin 938d7c1fc4 (X11) Optimize x11_update_title - it was previously calling XChangeProperty
at regular intervals even when the title output for the window title had not
changed at all, now we compare it properly against the last set title, and
only if it has changed will we make the call to XChangeProperty. Also, do
away with strlen(title) calculation and use return value of
video_driver_get_window_title instead
2022-08-27 16:03:38 +02:00
LibretroAdmin eaae2aec46 Increase the size of formatted_number to 16 so we no longer get
-Wformat-truncation warnings (state slot would be way too big though
regardless, even the current cap at 999 is ridiculous)
2022-08-27 15:45:49 +02:00
LibretroAdmin 0c7408ee16 (EGL) Buildfix 2022-08-27 15:43:16 +02:00
LibretroAdmin bbf93812a5 (EGL) Turn some EGL functions static 2022-08-27 15:35:08 +02:00
LibretroAdmin 25b76fdb54 input_keyboard_osk_event_append and others: don't call strlen
implicitly, always leave it up to caller
font_driver_get_message_width - try to avoid scenario where 'len'
is 0
2022-08-27 15:13:56 +02:00
LibretroAdmin f34f4d060c (video_shader_get_type_from_ext) remove strlen call 2022-08-27 14:29:37 +02:00
LibretroAdmin 19c72a413f (gfx_thumbnail_path.c) Cache localized string
(menu_displaylist.c) Some optimizations:
* Make sure val_d is never bigger than 16, it should just
contain a number. 16 is more than plenty (and probably too big even)
* Hose val_d out of loops if its value never changes inside the loop
* Attempt to avoid calling msg_hash_to_str inside loops unnecessarily
2022-08-27 13:20:29 +02:00
LibretroAdmin 87de6bda46 (input_autoconfigure_disconnect_handler) Simplify some code 2022-08-27 09:22:20 +02:00
LibretroAdmin b200ab6f8f Simplify code, and no longer have to deal with GCC suppression of warnings 2022-08-27 09:07:55 +02:00
LibretroAdmin 388183d971 (menu_displaylist)
* Don't attempt to call msg_hash_to_str in a loop, cache it once outside
inside a local variable
* Do away with some spurious snprintf usage for RGUI (truncation does not matter
as pointed out by jdgleaver, so we needn't be concerned)
2022-08-27 09:02:43 +02:00
LibretroAdmin c0221ae340 Fix typo 2022-08-27 07:59:22 +02:00
LibretroAdmin 61e24132bf (task_save.c) Simplification in control flow
(snprintf) Try to reduce or simplify snprintf calls, only tend to
use it for processing integers/numbers and avoid it for regular
string concatenation (NOTE: we try to be a bit safer about it to
address earlier cited criticism, although we don't consider concatenating
3 or 4 characters at the end to be insecure)
(msg_hash_to_str) Try to avoid duplicate calls to the same localized
string when we can just cache the results once instead locally
2022-08-27 07:55:02 +02:00
github-actions 45b05ea3db Fetch translations from Crowdin 2022-08-27 00:12:27 +00:00
LibretroAdmin f3c13cf669 * (cheat_manager_save) Reduce amount of snprintf calls from 4 to 1 2022-08-26 23:35:45 +02:00
LibretroAdmin 8f47621857 (libretro-common) Remove unused jsonsax files - we use rjson now instead 2022-08-26 17:38:34 +02:00
LibretroAdmin c3a1c578b6 Prefer to use string_starts_with_size/string_ends_with_size (less strlen
calls)
2022-08-26 17:27:55 +02:00
LibretroAdmin be9b4031d9 Remove some 'Unused variable' warnings 2022-08-26 17:10:45 +02:00
LibretroAdmin a47ccd81ed (video_shader_parse.c) Don't keep recreating formatted_num unnecessarily
when we already have it
2022-08-26 16:37:24 +02:00
sonninnos 1f048dd358 (XMB+Ozone) Core option category icon refinements (#14354) 2022-08-26 16:11:36 +02:00
LibretroAdmin 7507e20703 Revert "(RJSON) Combine multiple consecutive rjsonwriter_raw calls into one"
This reverts commit 82efa5a3d6.
2022-08-26 14:44:29 +02:00
LibretroAdmin 82efa5a3d6 (RJSON) Combine multiple consecutive rjsonwriter_raw calls into one
- significantly reduces the amount of function calls
2022-08-26 13:55:52 +02:00
LibretroAdmin dfe712da95 (Steam) Buildfix 2022-08-26 12:58:06 +02:00
LibretroAdmin 842121ca16 (Steam) restore to original code 2022-08-26 12:38:53 +02:00
LibretroAdmin 205b9f862f (CTR) Buildfix/ fix typo 2022-08-26 11:49:27 +02:00
LibretroAdmin 29caa95f7e (platform_unix.c) Use safer 'fill_pathname_join_special' for assembling
file path names instead of snprintf
(ctr_gfx.c) Use strlcpy instead of snprintf where possible
(ctr_gfx.c) Use snprintf instead of sprintf where possible
(ctr_gfx.c) Some general style nits
2022-08-26 10:43:42 +02:00
LibretroAdmin b8b3fe55fe Turn Advanced Settings on by default, this entire filtering of
settings will need a complete rethink anyways
2022-08-26 10:06:03 +02:00
LibretroAdmin 62fffe726c Steam buildfix #3 2022-08-26 09:57:34 +02:00
LibretroAdmin 112a350789 (Steam) Buildfix #2 2022-08-26 09:39:40 +02:00
LibretroAdmin 1b07e2bdce (Steam) Buildfix 2022-08-26 09:37:22 +02:00
sonninnos de67f174bf (XMB) Fix icons in 'Load Content' Favorites (#14353) 2022-08-26 08:35:12 +02:00
LibretroAdmin 9535c5c0ad Optimize menu_displaylist_parse_core_options_dropdown_list:
* Hose val_d snprintf outside of loop
* Make it smaller
2022-08-26 00:02:04 +02:00
LibretroAdmin d67cb22c7f (menu_setting.c) Replace trivial usage of snprintf with strlcpy (where it only printed a
string and nothing else, or similar simple usage)
2022-08-25 19:56:44 +02:00
LibretroAdmin ee16c4558d Forgot to add compat_strldup.c to Wii and WiiU salamanders 2022-08-25 17:02:05 +02:00
LibretroAdmin 1a646d17e0 Add compat_strldup.c to Salamander versions 2022-08-25 17:00:23 +02:00
LibretroAdmin 288b2da13e Create separate file compat_strldup.c since compat_strl.c is not
getting built-in for Apple targets at all
2022-08-25 16:50:12 +02:00
LibretroAdmin 625e63c3cc Simplify DEFAULT_FILL_TITLE_MACRO 2022-08-25 16:42:46 +02:00
LibretroAdmin 575e331fd1 If we already know the length of the string, use strldup instead.
Avoids the internal strlen call inside strdup, and strdup is a deprecated
function starting from MSVC2005 anyways.

NOTE: Do NOT pass STRLEN_CONST as n parameter to strldup, it needs to
be at least +1 character higher than the strlen return value of the same
string
2022-08-25 16:31:54 +02:00
LibretroAdmin 5bb3fbab93 Fix mistake in prior commit - should be concatenated to string 2022-08-25 15:17:31 +02:00
LibretroAdmin 6caa139700 (cheevos.c) Fix some function prototypes for C
Rewrite some snprintfs as strlcpy/strlcat/manual assignment - only
use snprintf if we actually need the formatting
2022-08-25 15:08:02 +02:00
LibretroAdmin 15fe258c1b Reduce snprintf calls 2022-08-25 13:03:08 +02:00
LibretroAdmin 1b181185c2 Simplify override_shader_values - entry variable never used 2022-08-25 08:51:55 +02:00
LibretroAdmin a1f5a03551 (libretrodb) Replace strncpy 2022-08-25 08:32:02 +02:00
LibretroAdmin f5ac33c0b6 Simplify task_database_cue.c code -
* Was copying pre_game_id into several memory buffers for no real reason,
gets rid of some unnecessary strncpy calls this way too
2022-08-25 07:15:27 +02:00
LibretroAdmin 88187e7ef2 * Start getting rid of strncpy
* steam.c - cleanups:
  * Use string_to_lower from libretro-common/stdstring.c instead of
    its own version
  * Some stylistic changes
  * Rewrite strncpy calls into strlcpy/strlcat/manual assignment
  * Make it C89 compliant
  * Some unused variables
2022-08-25 06:51:39 +02:00
LibretroAdmin 8017410098 task_database_cue_get_token - correct to 'if (rv < 0)' instead 2022-08-25 05:52:42 +02:00
LibretroAdmin c841e191f7 (task_database_cue.c) Put this conditional back 2022-08-25 05:36:48 +02:00
LibretroAdmin da13fb0f48 Don't include errno.h in files that don't justify its use 2022-08-25 05:19:30 +02:00
LibretroAdmin 39241699a0 Drop errno dependency in database_cue_get_token - was some legacy
code that is probably not needed
2022-08-25 04:51:00 +02:00
LibretroAdmin 93babdd6f7 Remove mono_crash.mem.413585.1.blob 2022-08-25 04:43:51 +02:00
lucasmr 808fc7f389 Refactor task_database_cue.c (#14349) 2022-08-25 04:42:23 +02:00
sonninnos 8fd0961c9a Show playlist entry as 'Quick Menu' header title (#14350) 2022-08-25 04:41:14 +02:00
Cthulhu-throwaway e45958b25a (Network) Get rid of the timeout_enable parameter for socket_connect (#14351) 2022-08-25 04:40:19 +02:00
Apaczer 23f649b050 enable screenshots on MIYOO (#14347)
update Makefile.miyoo
2022-08-25 02:56:16 +02:00
github-actions a5eb06b2b5 Fetch translations from Crowdin 2022-08-25 00:14:56 +00:00
Cthulhu-throwaway ea9dd022d6 (Netplay) Do not try to receive new data if the data is in the buffer (#14345) 2022-08-24 21:55:48 +02:00
LibretroAdmin 72cc98e9bd Remove unused variables 2022-08-24 17:42:01 +02:00
Cthulhu-throwaway b59624adc8 (Netplay) Copy data on receive, even if the buffer is full (#14344) 2022-08-24 16:57:11 +02:00
LibretroAdmin 9aef0eff90 Resync 2022-08-24 16:41:21 +02:00
LibretroAdmin 56a6c50728 (task_database_cue.c) Get rid of some strcmps 2022-08-24 16:32:55 +02:00
LibretroAdmin c79904f8b3 (task_database_cue.c) More simplifications 2022-08-24 16:21:45 +02:00
LibretroAdmin f2d8b67f23 (task_database_cue.c) Simplifications:
- unsafe strcpy/strcat/sprintf were used, so pass 'len' parameters
to detect_{system} functions so that we can use the safer strlcpy/strlcat
calls instead
- thanks to strlcat/strlcpy return values, we can do less string concatenations
and get the same results
- some other miscellanous cleanups
2022-08-24 16:08:06 +02:00
LibretroAdmin fdc563e6f7 Remove errno dep (task_database_cue.c) (#14341)
* (task_database_cue.c) Turn some functions static - some general cleanups

* Start removing errno dependency on task_database_cue.c
2022-08-24 15:15:21 +02:00
LibretroAdmin 6b9a382f2e Resync 2022-08-24 15:09:51 +02:00
LibretroAdmin 6894600d41 (stdstring) word_wrap - use strlcpy instead of strcpy 2022-08-24 15:06:03 +02:00
LibretroAdmin 6126a86259 Try to avoid sprintf/strcat/strcpy calls as much as possible in
RetroArch codebase
2022-08-24 13:49:05 +02:00
LibretroAdmin 2bc723bb4b (Menu) Move duplicate code is_running_quickmenu to menu_driver.c 2022-08-24 13:28:53 +02:00
LibretroAdmin a147cb09d9 Get rid of duplicate code - move function to menu_driver.c and have
both XMB and Ozone use it
2022-08-24 13:14:55 +02:00
sonninnos 5f7d14966c (Ozone+XMB) Fullscreen thumbnail browsing (#14342) 2022-08-24 12:35:54 +02:00
LibretroAdmin 8776c79a60 Fix 'inconsistent instance variable specification' error for OSX 10.5 / Xcode 3.1.4 2022-08-24 11:46:02 +02:00
23rd 9663e4b4f1 Fixed items of system top menu bar on macOS. (#14288)
The second attempt.
This reverts commit e1caf32817.
2022-08-24 03:57:43 +02:00
Cthulhu-throwaway 620e048c52 (Netplay) Do not try to receive new data if the buffer is full (#14343) 2022-08-24 03:32:09 +02:00
LibretroAdmin fc861c167c - Get rid of some strerror usage
- Get rid of errno.h include in task_audio_mixer.c
- Rename get_token so it has less chance to conflict with other symbols
2022-08-23 19:58:20 +02:00
LibretroAdmin f48ba41b67 Remove unused variables 2022-08-23 19:41:45 +02:00
LibretroAdmin c04201927b Don't make libretrodb dependent on errno anymore (#14340)
* Don't make libretrodb dependent on errno anymore
2022-08-23 19:36:52 +02:00
LibretroAdmin d969facdb4 C89_BUILD buildfix 2022-08-23 19:23:53 +02:00
LibretroAdmin c22c69e792 (gfx_animation.c) Simplify build_line_ticker_string 2022-08-23 18:26:49 +02:00
LibretroAdmin e769436876 (word wrap functions in stdstring.c) Avoid implicit strlens, caller
should pass the 'length' to the function instead
2022-08-23 17:06:01 +02:00
Jamiras 85c44f9245 more thread-awareness in task callbacks (#14337)
* more thread-awareness in task callbacks
2022-08-23 15:11:11 +02:00
LibretroAdmin 6f738d4fbd Gradually get rid of strcpy_literal
Reasons:
1 - Just a macro for strcpy
1.2 - doesn't have a return type unlike strlcpy, can't be used
for string concatenation
1.3 - unsafe compared to strlcpy

Do either manual string assignment per character or strlcpy, no
inbetween by resorting to strcpy
2022-08-23 15:04:47 +02:00
LibretroAdmin 5a036de53c (configuration.c) reduce snprintf calls 2022-08-23 08:29:48 +02:00
LibretroAdmin 0e5b2ff280 (LED drivers) Miscellaneous cleanups 2022-08-23 08:11:22 +02:00
LibretroAdmin e87db6f0a2 utf8cpy already does NULL termination 2022-08-23 07:52:03 +02:00
github-actions c97bc0ddbd Fetch translations from Crowdin 2022-08-23 00:14:24 +00:00
Cthulhu-throwaway 1a1db6177d (Netplay) Fix lobby sublabel CRC display on some platforms (#14338) 2022-08-22 23:05:13 +02:00
LibretroAdmin f5e5a1b201 strlcpy already does NULL termination 2022-08-22 12:22:54 +02:00
LibretroAdmin a96d12e8bc Put back property locking in threaded_gather_internal - without this,
core updater tasks would crash/segfault - heap corruption
2022-08-22 03:41:17 +02:00
Cthulhu-throwaway e1a139ec0f (Network Stream) Add function netstream_eof (#14335) 2022-08-21 21:52:57 +02:00
LibretroAdmin 30977a2603 Enable savestate file compression by default for UWP/Xbox - got told there
are no more issues with it
2022-08-21 20:48:28 +02:00
github-actions 278baf212b Fetch translations from Crowdin 2022-08-21 00:13:44 +00:00
LibretroAdmin 10a351228b * Rewrite some snprintfs
* task_steam.c - add license header
2022-08-20 19:17:28 +02:00
LibretroAdmin 23b06dca69 (video_shader_parse) reduce amount of snprintfs - create
formatted number once then keep appending it to strings
2022-08-20 17:56:19 +02:00
LibretroAdmin be2d35a1f4 (core_option_manager_new) rewrite snprintf 2022-08-20 16:53:10 +02:00
Cthulhu-throwaway f27c8c0c1d (Network Stream) Add string functions (#14333) 2022-08-20 16:36:13 +02:00
github-actions f3eaa5cfa8 Fetch translations from Crowdin 2022-08-20 00:11:50 +00:00
Ryunam 597c33fa94 Fix core option categories regression (#14332) 2022-08-19 17:37:31 +02:00
LibretroAdmin 90e0d0bb70 (core_option_manager.c) Some simplifications 2022-08-19 10:37:32 +02:00
github-actions a510fb5d20 Fetch translations from Crowdin 2022-08-19 00:13:33 +00:00
MrHuu 3f8fde540d (3DS) Add unique ID's (#14330)
- Arduous
- Gong
- Jump 'n Bump
- Mini vMac
- RETRO8
- Super Mario War
- Vapor Spec
- vitaQuake2-rogue
- vitaQuake2-xatrix
- vitaQuake2-zaero
2022-08-18 19:11:29 +02:00
Jamiras 2acc7c4b39 release achievement badge textures when video driver is deinitialized (#14329) 2022-08-18 04:28:55 +02:00
Jamiras e0a065d20e don't hold property_lock while gathering tasks (#14328) 2022-08-18 04:28:40 +02:00
sonninnos c818024bc6 (RGUI) Savestate thumbnails (#14326) 2022-08-18 02:12:50 +02:00
github-actions 245319c389 Fetch translations from Crowdin 2022-08-18 00:12:16 +00:00
LibretroAdmin 4c7e316aa2 Turn functions static 2022-08-17 16:47:44 +02:00
MrHuu 46bafd6e46 (3DS) Add bottom menu options (#14323) 2022-08-17 08:23:07 +02:00
github-actions b55e6d10c7 Fetch translations from Crowdin 2022-08-17 00:11:51 +00:00
Giovanni Cascione 093432d6c4 mali_fbdev: fix assertion failed on video threaded switch (#14316)
* mali_fbdev: fix assertion failed on video thread switch

* mali_fbdev: added fallback to get refresh rate currently set
2022-08-16 22:13:43 +02:00
github-actions b32ec36130 Fetch translations from Crowdin 2022-08-16 00:14:31 +00:00
Filipe Azevedo e8668a5c71 rzipstream_tell: Fix missing tell for non compressed files (#14313)
The tell call would always return the compressed stream position.
2022-08-15 17:48:09 +02:00
github-actions cb82725cc2 Fetch translations from Crowdin 2022-08-15 00:11:58 +00:00
github-actions 212013f677 Fetch translations from Crowdin 2022-08-14 00:12:45 +00:00
Cthulhu-throwaway c180560165 (Netplay) Improve check frames menu entry (#14320) 2022-08-13 22:28:43 +02:00
Cthulhu-throwaway 8914f0b6fe (Netplay) Less cryptic error messages (#14319) 2022-08-13 10:54:09 +02:00
LibretroAdmin 1580dbae6b Go about this a different way - lck and lsae are read from exts
instead of the string_list
2022-08-13 02:55:33 +02:00
Cthulhu-throwaway 2d1c238c1d Special functions for core serialization (#14317) 2022-08-13 02:24:28 +02:00
github-actions 74ef6a0f4a Fetch translations from Crowdin 2022-08-13 00:13:23 +00:00
LibretroAdmin 4a1aaa55ec * Safer way of appending extensions at the end of the string - (#14318)
instead of this manual assignment, we can take advantage of the
string list in one of the instances to add the extensions to it.
Less string copying/concatenation that way later on as well.
* Append the extension to the string earlier before it's passed
to the leaf function that needs it
2022-08-13 01:40:45 +02:00
LibretroAdmin 59866ddac6 (video_shader_parse.c) Safer code 2022-08-12 22:09:33 +02:00
LibretroAdmin e264ab0547 Add necessary compilation files to Griffin and Makefile.common 2022-08-12 21:56:36 +02:00
LibretroAdmin 86e4c0394b (glslang) Go back to prior code 2022-08-12 21:49:42 +02:00
hunterk b793169638 add credits to Cyber for their NTSC presets (#14315) 2022-08-12 07:31:46 +02:00
github-actions 1920430539 Fetch translations from Crowdin 2022-08-12 00:11:11 +00:00
Cthulhu-throwaway 54f06c55f5 (Netplay) More removal of older unused code (#14314) 2022-08-12 01:36:55 +02:00
Cthulhu-throwaway 908667d97a (Netplay) Removal of older unused code (#14312) 2022-08-11 23:17:33 +02:00
Filipe Azevedo d62b866237 rzipstream_gets: Fix missing eol (#14311)
The eol was always stripped from the data, leading to behavior
differences with filestream_gets and general read line implementations.
2022-08-11 23:17:00 +02:00
LibretroAdmin 4c4bec11f7 NULL termination already happens in strlcpy 2022-08-10 02:45:27 +02:00
github-actions 13b5ec4b1a Fetch translations from Crowdin 2022-08-10 00:11:42 +00:00
LibretroAdmin d5cc01c574 Fix another assignment mistake of the NULL terminator 2022-08-09 19:28:29 +02:00
LibretroAdmin ec47b9883d (configuration.c) Fix mistake in NULL terminator assignment 2022-08-09 18:53:45 +02:00
github-actions 440a67e4b8 Fetch translations from Crowdin 2022-08-09 00:13:27 +00:00
LibretroAdmin 96a0486790 C89_BUILD buildfix 2022-08-09 00:01:55 +02:00
LibretroAdmin a6e210e9db Get rid of some strlcats 2022-08-08 22:41:32 +02:00
LibretroAdmin 05cf639712 Reduce amount of strlcats in retroarch.c 2022-08-08 21:46:37 +02:00
Cthulhu-throwaway c030e1c5dc (Netplay) Support for customizing chat colors (#14305) 2022-08-08 20:09:06 +02:00
LibretroAdmin a9157f975e String cleanups (#14304)
(retroarch.c) retroarch_get_capabilities - get rid of strlcat
party in RARCH_CAPABILITIES_CPU, do simple manual assignment for
concatenation instead and NULL terminate at the end
(menu_displaylist.c) Do something about some of the unnecessarily huge
local strings of PATH_MAX_LENGTH size (can be as large as 8192)
(menu_displaylist.c) Replace some trivial strlcats / snprintfs
(D3D10/D3D11/D3D12) Strings don't need to be initialized -
strlcpy already null-terminates - get rid of some constants
2022-08-08 19:11:15 +02:00
Cthulhu-throwaway d3f3c58e61 (Network) Fix getnameinfo_retro's port value for HAVE_SOCKET_LEGACY platforms (#14303) 2022-08-08 15:28:42 +02:00
github-actions 5ffe62a52b Fetch translations from Crowdin 2022-08-08 00:11:35 +00:00
Cthulhu-throwaway 078f712b34 (WiiU) Attempt fix (#14302) 2022-08-07 20:32:27 +02:00
Cthulhu-throwaway 976a49ad2b Ensure #ifdef instead of #if for HAVE_NETWORKING (#14299) 2022-08-07 13:42:09 +02:00
github-actions 3dc979356f Fetch translations from Crowdin 2022-08-07 00:13:49 +00:00
LibretroAdmin ba8cc5f381 Cut down on some of the strlcats 2022-08-07 00:28:13 +02:00
LibretroAdmin 0edbe945b4 (MaterialUI/XMB) Optimize refreshing of playlists 2022-08-06 20:32:19 +02:00
LibretroAdmin 1b43e60c7c (Ozone) Use less path_remove_extension and work more with return values
from file_path.c functions
(menu_cbs_title) Small optimization to string concatenation
2022-08-06 19:51:00 +02:00
LibretroAdmin c7786a45e1 Create path_get_extension_mutable and use it in menu_explore function
for trivial extension replacement in string
2022-08-06 19:06:31 +02:00
LibretroAdmin 94ed25be56 Cleanups (#14296)
- (database_info.c) Optimizations for database_info_build_query_enum() -
 it would call strlcat at the very least 3 times, normally more than that.
 Every strlcat call is at least one or more strlens. Reduce it all down
 to manual string concatenation and one strlcat
- (database_info_build_query_enum) - always NULL terminates string so no need for NULL termination done by callee
* (menu_displaylist) use smaller strings for basename paths, remove one unnecessary string
in menu_displaylist.c function
- (disk_index_file.c) Avoid another trivial string concatenation by doing
it manually after fill_pathname_join_special
- (fill_pathname_join_delim) since fill_pathname_join_delim() now has a return value, use it for 
string concatenation
- (platform_unix) - Use BUFSIZ as size for a buffer in system_property_get
- some other trivial strlcat usage replacements
2022-08-06 18:04:40 +02:00
Tatsuya79 72b4cf914e Rename video filters (#14293) 2022-08-06 13:05:01 +02:00
github-actions 5b09b6614b Fetch translations from Crowdin 2022-08-06 00:12:09 +00:00
LibretroAdmin 879674d4c3 Had to update Makefile.emscripten too 2022-08-05 23:51:34 +02:00
LibretroAdmin 6d054a2d96 Add Emscripten.yml 2022-08-05 23:50:29 +02:00
LibretroAdmin 3b0f20768b Add RetroFW/RS90/RetroFW workflows 2022-08-05 22:43:37 +02:00
LibretroAdmin bebe803658 Add DOS/DJGPP workflow 2022-08-05 21:52:57 +02:00
LibretroAdmin fa9f39c0ab Add Switch/libnx workflow 2022-08-05 20:17:02 +02:00
LibretroAdmin 30bdd8b447 Add 3DS workflow 2022-08-05 19:20:54 +02:00
LibretroAdmin 5739c537a2 Some CXX_BUILD fixes 2022-08-05 17:40:06 +02:00
LibretroAdmin 0ed18d16c4 Add GameCube/Wii workflows 2022-08-05 17:08:08 +02:00
LibretroAdmin cd7a6afd20 Add WiiU workflow 2022-08-05 16:24:46 +02:00
LibretroAdmin 03971308a3 (PIA) Fix warning 2022-08-05 15:27:55 +02:00
LibretroAdmin 1135bf0534 Add PSVita github workflow 2022-08-05 15:23:32 +02:00
LibretroAdmin dab528ca11 Update Windows-i686-MXE.yml 2022-08-05 13:53:51 +02:00
LibretroAdmin a30f256bb0 Create Windows-i686-MXE.yml 2022-08-05 13:53:00 +02:00
LibretroAdmin 7eecf3bdd0 Create Windows-x64-MXE.yml 2022-08-05 13:22:34 +02:00
Cthulhu-throwaway a7c93eb9ed (PS3) Silence Warnings (#14287) 2022-08-05 12:45:35 +02:00
LibretroAdmin ef551478d3 Use fill_pathname_join when out and dir overlap 2022-08-05 05:27:51 +02:00
TheRhysWyrill 9d939a35d6 Add Daite XMB Icon Theme (#14263) 2022-08-05 04:27:34 +02:00
Cthulhu-throwaway b04cb4b1e5 (PS3) Buildfix (#14285) 2022-08-05 04:19:28 +02:00
LibretroAdmin e3b82184a7 (glslang) Silence warning 2022-08-05 02:29:59 +02:00
Cthulhu-throwaway add4a1e8a0 (Network) Define inet_ntop and inet_pton for older Windows versions (#14284) 2022-08-05 02:23:35 +02:00
github-actions 9c7b96b9d0 Fetch translations from Crowdin 2022-08-05 00:14:42 +00:00
LibretroAdmin 72a7b3ce07 (X11) Turn these two functions static 2022-08-05 02:00:09 +02:00
Cthulhu-throwaway c6b99a5df0 (Network) Always have getaddrinfo and getnameinfo flags defined (#14283) 2022-08-04 23:06:28 +02:00
LibretroAdmin 0594df8cce Remove some unused variables 2022-08-04 22:41:17 +02:00
LibretroAdmin e1caf32817 Revert "Fixed items of system top menu bar on macOS. (#14271)" (#14279)
This reverts commit 7068eebe0c.
2022-08-04 17:56:26 +02:00
LibretroAdmin 2e5df6a973 fill_str_dated_filename: add size_t return value 2022-08-04 17:18:32 +02:00
LibretroAdmin 0c21a92581 * fill_pathname_expand_special will NULL-terminate string so not
necessary to NULL terminate passed string
* fill_pathname - add size_t return value
* Some general cleanups
2022-08-04 17:10:51 +02:00
LibretroAdmin 9ae46d2648 (file_path.c)
- file_path_expand_special - cut down on code duplication
- file_path_expand_special - add size_t return value
- fill_pathname_abbreviate_special - add size_t return value
2022-08-04 16:53:53 +02:00
LibretroAdmin 5172fe2ba6 fill_pathname_abbreviated_or_relative - add return value 2022-08-04 16:44:01 +02:00
LibretroAdmin 67c23aec0e (Wayland) Stub out unused variables for now
(menu_contentless_cores) Fix mistake - needed to set len to return
value of fill_pathname_join_special
(configuration.c) Fix some unused variable warnings on Linux
2022-08-04 16:19:50 +02:00
23rd 7068eebe0c Fixed items of system top menu bar on macOS. (#14271) 2022-08-04 15:47:30 +02:00
CyberLabSystems 993aaee716 Adding CyberLab custom Blargg NTSC Filter Presets (#14231)
CyberLab custom Blargg NTSC Filter Presets offer improved dedithering with less scrolling, shimmering and other artifacts than current core included Blargg NTSC Filter implementations.

They also work properly with several cores that would otherwise result in a squished image if using the Blargg NTSC SNES filters currently available in the Video Filters folder.
2022-08-04 15:44:47 +02:00
LibretroAdmin 6ad88b080e Turn these two fill_pathname_join_delim() calls into plain strlcat() 2022-08-04 15:15:27 +02:00
LibretroAdmin b2634ea588 * Create fill_pathname_join_special - and specify fill_pathname_join
as deprecated.
* Use fill_pathname_join_special in the vast majority of cases where
we can ensure out_path is a new empty string
* Get rid of some extension concatenation with strlcat where encountered
* Some general cleanups with NULL termination of strings that get immediately
passed to strlcpy/strlcpy-adjacent functions
2022-08-04 14:19:38 +02:00
Cthulhu-throwaway 3aa1811ca9 (Network) Add getnameinfo_retro (#14278) 2022-08-04 13:22:49 +02:00
LibretroAdmin 88bc26da4e Replace some more trivial strlcat calls 2022-08-04 04:05:27 +02:00
LibretroAdmin e7f3432e48 Replace some trivial strlcat usage - use return value of preceding
strlcpy then simply append the extension to it at this location
2022-08-04 03:45:09 +02:00
github-actions eab5898790 Fetch translations from Crowdin 2022-08-04 00:11:40 +00:00
LibretroAdmin 32314eddaf (video_crt_switch.c) Get rid of unnecessary strlen 2022-08-04 00:10:19 +02:00
LibretroAdmin ec4c15e8e4 (gfx_widget_load_content_animation) Cleanups - one strlen instead of two,
NULL termination of some strings is not necessary since it gets passed to
strlcpy and/or fill_pathname_join anyway
2022-08-04 00:00:21 +02:00
LibretroAdmin f4c22cb236 (file_path.c) fill_pathname_join - do away with one less strlcat 2022-08-03 23:54:10 +02:00
LibretroAdmin 819337d5d4 video_shader_get_type_from_ext - get rid of unnecessary strlen 2022-08-03 23:35:16 +02:00
LibretroAdmin c240340c91 (vfs_implementation.c) We need to include stdstring.h for string_is_empty 2022-08-03 19:49:02 +02:00
LibretroAdmin 53d2fdbd97 net_http_urlencode - avoid one strlen call by clever use of strlcpy
return value and some subtraction arithmetic
2022-08-03 15:53:12 +02:00
LibretroAdmin 8e6369ef33 (vfs_implementation.c) An unnecessary repeated conditional removed 2022-08-03 15:19:54 +02:00
LibretroAdmin 7871e9fbc1 retro_vfs_file_open_impl - bunch of inefficiencies here:
- was doing a strlen first on path to calculate the length
- stored at least three local variables for string constants
- did another memcmp check after doing the length comparison conditional first
Simplify all this into a simple string comparison checking if the
path starts with the string 'vfsonly://' and/or 'cdrom://' -
avoid both strlen and memcmp cost. Also removed the need for
stdstring.h header include - just translated STRLEN_CONST into
(sizeof(x)-1) - no header file dependency for the only usage of stdstring.h
in this file
2022-08-03 15:07:02 +02:00
LibretroAdmin 02df727cb2 Avoid strtof() since it's C99/POSIX. Go for strtod followed by float
cast since it should be almost identical
2022-08-03 14:07:32 +02:00
github-actions 16930150f8 Fetch translations from Crowdin 2022-08-03 00:13:16 +00:00
LibretroAdmin 01a7f2010d Buildfix for tvOS - tvOS apparently doesn't build in all the menu
drivers which is how this error was found
2022-08-02 23:26:34 +02:00
LibretroAdmin 08cc1c986a Refactor file path special (#14275)
* First pass - unique variable names

* (file_path_special.c) fill_pathname_application_special() - no longer
a recursive function, other optimizations

* Buildfix

* Put another HAVE_XMB ifdef around xmb_theme_ident

* Remove unused variables

* Remove more unused variables and use fill_pathname_join instead of strlcpy
at the end
2022-08-02 20:57:55 +02:00
LibretroAdmin bde84b926f fill_pathname_application_special - redo string concatenation for
Ozone icons - avoid fill_pathname_slash when possible and use
fill_pathname_join instead - avoids the strlen cost
2022-08-02 18:47:34 +02:00
LibretroAdmin 6dd52d9bb1 Get rid of more boilerplate code in file_path_special.c 2022-08-02 18:05:51 +02:00
LibretroAdmin 556e6702ef Start downscaling on file_path_special.c 2022-08-02 17:54:38 +02:00
LibretroAdmin 70ca20fbf9 (MaterialUI) Fix earlier mistakes made (cd04f770b9) -
we need two separate icon paths cached - one for MaterialUI and one for Ozone (the system
icons)x
2022-08-02 17:25:52 +02:00
LibretroAdmin 7a993a5951 Count amount of characters window title has so that we can (#14274)
return the value when calling video_driver_get_window_title -
this is so we can prevent strlen calls in x11_common.c
2022-08-02 17:00:33 +02:00
LibretroAdmin 3c7fa43f29 (Windows/Linux) Fix windows title regressions 2022-08-02 16:35:50 +02:00
LibretroAdmin 33c9f56df0 (RPNG) PNG decoder - proper namespacing of functions, general cleanups 2022-08-02 15:55:26 +02:00
LibretroAdmin 342d3da620 (RPNG optimizations)
- Use memcpy to inflate_buf into array
- Some miscellaneous tweaks
2022-08-02 15:17:37 +02:00
Cthulhu-throwaway 8105688a99 (Netplay) Show client slowdown information (#14272) 2022-08-02 13:31:55 +02:00
LibretroAdmin e6f3a387b2 png_reverse_filter_copy_line - optimization - paeth would always return
'b' input value (and input is unsigned, so abs would have no effect), so
get rid of the paeth function call for the first loop iteration
2022-08-02 13:22:13 +02:00
LibretroAdmin 78f4e0abda C89_BUILD buildfix 2022-08-02 11:34:41 +02:00
LibretroAdmin a974cef001 (sinc resampler) Simplifications - call besseli0 directly instead of
through kaiser_window_function wrapper function - get rid of some unnecessary
sqrtf calls and such, some other small opts
2022-08-02 11:29:05 +02:00
LibretroAdmin 605c4608d9 Optimize fill_pathname_join - avoid the call to fill_pathname_slash()
which would have an implicit strlen cost
2022-08-01 22:14:26 +02:00
LibretroAdmin 9d66e2d5e1 General cleanups -
* struct was erroneously named 'catagory' - changed to 'category'
* Removed some strlcpys that were just setting the string to a fixed constant value
* Random nits
2022-08-01 21:31:45 +02:00
LibretroAdmin e4bff7c12c Move rjsonwriter helper inline functions over to separate file rjson_helpers.h 2022-08-01 17:41:34 +02:00
LibretroAdmin 5b56ff145f Refine documentation 2022-08-01 15:46:08 +02:00
LibretroAdmin f79875536a (libretro-common) Move file_crc32 out of encoding_crc32.c - we don't want file I/O
code in encodings/encoding_crc32.c
2022-08-01 14:04:01 +02:00
LibretroAdmin ec6f4c1f55 (libretro-common) refinements to documentation 2022-08-01 13:06:35 +02:00
LibretroAdmin 107c69ab9e (libretro-common) More documentation refinement 2022-08-01 11:03:58 +02:00
LibretroAdmin c7a1d83675 (libretro-common) Start documenting leaf functon calls in function documentation
(libretro-common) docs - document when string has to be non-NULL or else UB (undefined behavior)
(libretro-common) stdstring.c - string_hex_to_unsigned - make strlen call unneeded
2022-08-01 09:52:39 +02:00
Cthulhu-throwaway 20c4407928 Add HAVE_IFINFO macro (#14265) 2022-08-01 07:51:02 +02:00
LibretroAdmin f472e4d0de (gfx_widgets) Call fill_pathname_application_special outside of hot functions
(gfx widgets) Pre-assemble and store paths that are not subject to change
2022-08-01 02:07:36 +02:00
LibretroAdmin cd04f770b9 (MaterialUI) Don't keep assembling MaterialUI icons path - store it once
in materialui_init
2022-08-01 01:17:39 +02:00
LibretroAdmin e9a6252fc7 (Ozone) Some simplifications - less string concatenation 2022-08-01 01:06:38 +02:00
LibretroAdmin 83a2ec1da8 (Ozone/XMB) Move some fill_pathname_join operations out of the loops since
the output string is not subject to change during iterations
2022-08-01 00:49:33 +02:00
LibretroAdmin 4b8d3ab8a0 (glslang) Use string append 2022-07-31 22:48:30 +02:00
LibretroAdmin e602f8762b (glslang) Turn functions static 2022-07-31 19:52:41 +02:00
LibretroAdmin 2b84be1210 Get rid of HlslLegalization 2022-07-31 19:34:30 +02:00
LibretroAdmin 5cb8d34ac8 (glslang) Relaxed errors will never be enabled 2022-07-31 19:26:54 +02:00
LibretroAdmin 819d02ab24 (glslang) Remove more unused code -
* EShMsgKeepUncalled will never be used
* ShBinding never used
* TIOMapResolver never used
2022-07-31 19:02:36 +02:00
LibretroAdmin 0faee680c0 (glslang) remove more code we won't need - EShMsgAST, etc 2022-07-31 18:49:16 +02:00
LibretroAdmin 5a4e7cfbd1 (glslang) Remove no longer used RemoveTree.cpp/.h 2022-07-31 18:28:45 +02:00
LibretroAdmin 2ba46da700 (glslang) Simplifications - cuts down on binary size 2022-07-31 17:41:22 +02:00
LibretroAdmin a176a935da (glslang) Further simplifications of InfoSink - get rid of message() and prefix() -
we want simple string concatenation/addition instead of all these layers
2022-07-31 16:37:49 +02:00
LibretroAdmin a2e525a1b6 (glslang) Further simplification of InfoSink 2022-07-31 16:08:33 +02:00
LibretroAdmin 0db7062c87 (glslang) Slim down TInfoSinkBase 2022-07-31 15:24:32 +02:00
LibretroAdmin e4b933cb88 (glslang) Cleanups - get rid of obsolete public API functions that
were never used, turn some functions static in ShaderLang.cpp
2022-07-31 15:06:13 +02:00
LibretroAdmin fdd5940951 (Font driver) render_msg function was sometimes doing two strlen
calculations instead of just one. NOTE/TODO/FIXME - see opportunity
to optimize this further
2022-07-31 12:59:50 +02:00
LibretroAdmin fca6015011 (file_path) path_basedir - remove unnecessary strlcpy - add return value comment
to another function
2022-07-31 12:45:14 +02:00
LibretroAdmin 88bdaffa87 path_basedir_wrapper - get rid of unnecessary strlcpy 2022-07-31 12:42:50 +02:00
LibretroAdmin 36edb15c5b path_parent_dir - don't do implicit strlen inside 2022-07-31 12:31:55 +02:00
Cthulhu-throwaway 9b10579a54 (Network) Fix getaddrinfo_retro (#14261) 2022-07-31 11:22:28 +02:00
kikmonandpapa afd463be16 added make clean between Release and Debug build (#14262)
Co-authored-by: papa <papa>
2022-07-31 11:22:04 +02:00
github-actions 4b7be8de3f Fetch translations from Crowdin 2022-07-31 00:13:16 +00:00
Cthulhu-throwaway f96ef5407a (Network) Refactor getaddrinfo_retro (#14258) 2022-07-30 22:43:32 +02:00
LibretroAdmin f711940339 (task_database_cue.c) Use STRLEN_CONST macro for last param to
string_is_equal_fast instead of hardcoded magic numbers - sizeof
is compile-time so should be at no detriment to performance
2022-07-30 18:31:05 +02:00
kikmonandpapa 44f5cb2935 Improved success rate of Serial scanning on PS1 by adding support for the xx.xxx format (#14256)
Co-authored-by: papa <papa>
2022-07-30 18:22:04 +02:00
LibretroAdmin 19e4b8c0ca Fix DEBUG codepath 2022-07-30 12:50:59 +02:00
Cthulhu-throwaway 40c974a19c (3DS) Silence Warnings (#14252) 2022-07-30 06:52:27 +02:00
github-actions 9906d2daca Fetch translations from Crowdin 2022-07-30 00:11:28 +00:00
Cthulhu-throwaway 6b9a2b4bb0 (Netplay) Small launch compatibility patch adjustments (#14251) 2022-07-29 22:49:10 +02:00
Cthulhu-throwaway aca5169416 (Netplay/WiiU) Launch compatibility patch (#14249) 2022-07-29 20:25:26 +02:00
LibretroAdmin 454e6f9b07 Convert some glslang files to C (#14248)
* Convert some glslang files to C (OSIndependent files)

* Fix some strings that were preventing Unix from being compilable

* Remove leftover for Apple in griffin_glslang.cpp - fixes compilation
2022-07-29 17:42:10 +02:00
GABO1423 3d69321c70 (msg_hash_us.h) Small touch up (#14246)
* Update msg_hash_us.h

* Update menu_displaylist.c

* Update msg_hash_us.h

* Update menu_displaylist.c
2022-07-29 17:41:26 +02:00
sonninnos 349ef1add2 (XMB) Dynamic wallpaper fixes: (#14247)
- 'Load Content' playlists
- Period in the playlist name
2022-07-29 17:40:11 +02:00
sonninnos 0c4bf5f2e3 (Ozone) Fix playlist thumbnail mouse hover after returning from QM (#14244) 2022-07-29 15:01:44 +02:00
LibretroAdmin a933b74b1e Buildfix 2022-07-29 15:01:06 +02:00
LibretroAdmin 11340c3c9c (glslang) Further removal of code we don't need 2022-07-29 14:43:22 +02:00
LibretroAdmin 22bef5dc6b (Ozone) Remove unused arrays 2022-07-29 13:07:16 +02:00
LibretroAdmin 6a8fe15772 (glslang) SpvBuildLogger never used, remove 2022-07-29 10:35:27 +02:00
LibretroAdmin 24a2f1e7c3 (glslang) Remove further unused files - SPVRemapper.cpp/.h, disassemble.cpp/.h,
doc.cpp/.h, LiveTraverser.h
2022-07-29 09:42:59 +02:00
LibretroAdmin 125d7dcc3b (glslang) Stripdowns - results in significant binary size decrease -
* Get rid of unused glslang/GenericCodeGen files
* Get rid of unused test files
* Get rid of unused Sh import interface
* Get rid of unused standalone files
* Get rid of unused Reflection/IoMapper files
2022-07-29 09:22:21 +02:00
LibretroAdmin 592f9384b0 Silence code analysis warnings by Xcode - unused variables - nothing
done with value set - etc
2022-07-29 08:29:43 +02:00
GABO1423 bcd921b012 (UWP) Build Fix (#14241) 2022-07-29 07:21:47 +02:00
sonninnos 052cdce29b (Ozone+XMB) Add playlist icons under 'Load Content' (#14243) 2022-07-29 07:12:01 +02:00
github-actions 79e7360938 Fetch translations from Crowdin 2022-07-29 00:11:30 +00:00
Sean O'Neil b999eaa4c9 Update uwp_main.cpp (#14239)
Added launch protocol arg 'forceExit' so a frontend can tell an already-running RetroArch UWP instance to quit.
2022-07-28 23:56:55 +02:00
sonninnos 6c38efb0ee Prevent playlist thumbnail cycle from showing duplicate images (#14238) 2022-07-28 23:55:47 +02:00
Cthulhu-throwaway 02905650cc (Switch) Silence Warnings (#14237) 2022-07-28 23:55:18 +02:00
Cthulhu-throwaway adea9559a7 (Netplay/Switch) Launch compatibility patch (#14235) 2022-07-28 21:40:07 +02:00
sonninnos 6c1de85add (Ozone+XMB) Thumbnail fixes (#14210) 2022-07-28 19:21:59 +02:00
LibretroAdmin 4afe0c55d5 (autoconfig) Go back to prior behavior 2022-07-28 18:21:06 +02:00
Cthulhu-throwaway 56130ec587 (Netplay/PS3) Launch compatibility patch (#14232) 2022-07-28 17:24:44 +02:00
Cthulhu-throwaway d7a30f2a18 (Netplay/Wii) Launch compatibility patch (#14230) 2022-07-27 16:26:48 +02:00
LibretroAdmin 2c3c9e1e71 Add note to string_list_join_concat 2022-07-27 15:51:16 +02:00
LibretroAdmin ba752b6364 Fix regression #14229 - NULL termination for strings still necessary
when passed to string_list_join_concat
2022-07-27 15:15:33 +02:00
github-actions 9f218f923c Fetch translations from Crowdin 2022-07-27 00:14:24 +00:00
Cthulhu-throwaway 51f5515c63 (Vita) Build fix (#14227) 2022-07-26 10:16:34 -07:00
Cthulhu-throwaway 83ac65d855 (Vita) Silence warnings (#14226) 2022-07-26 09:03:23 -07:00
Cthulhu-throwaway 29f0ba2e71 (Network/Vita) Add net_ifinfo support (#14225) 2022-07-26 16:10:23 +01:00
libretroadmin eb4440fafa Fix previous mistake in menu_action_sublabel_contentless_core 2022-07-26 13:45:41 +02:00
libretroadmin 88c2ae9ddf No null termination for strings passed to strlcpy/srlcat 2022-07-26 13:23:28 +02:00
Cthulhu-throwaway acfe990ec6 (Netplay/Vita) Enable partial LAN discovery (#14222) 2022-07-26 12:16:53 +02:00
Cthulhu-throwaway e083c46d6e (Netplay/Vita) Change default port (#14223) 2022-07-26 12:15:42 +02:00
Cthulhu-throwaway 8d4a64ab96 (Netplay) Disallow netplay start when content is not loaded for static core platforms (#14220) 2022-07-26 07:21:57 +02:00
libretroadmin 8ac1a36259 Don't do NULL termination on strings when passing to strlcpy and/or
a file_path function that calls strlcpy under the hood
2022-07-26 07:01:10 +02:00
github-actions d5becf92e8 Fetch translations from Crowdin 2022-07-26 00:12:24 +00:00
kikmonandpapa 45d78f2a60 [PS1 Serial Scanning] (#14219)
Changed return value of detect_ps1_game function to actuially return a
failure when the Serial couldn't be extracted.
Scanner will then fallback on crc check, and usually ends up finding the
games in the database.

Co-authored-by: papa <papa>
2022-07-25 22:41:32 +02:00
libretroadmin cedbcb10c6 Take out some more unnecessary NULL string termination 2022-07-25 14:12:54 +02:00
Cthulhu-throwaway 566b4b4520 (Vita) Silence warning (#14218) 2022-07-25 10:43:48 +02:00
Cthulhu-throwaway 97e3ef6ec7 (Network/Vita) Do not multiply negative timeout values (#14217) 2022-07-25 07:55:08 +02:00
Cthulhu-throwaway 262b0601e2 (Netplay/3DS) Launch compatibility patch (#14203) 2022-07-25 07:08:06 +02:00
Cthulhu-throwaway 153f77d764 (Netplay/Vita) Launch compatibility patch (#14215) 2022-07-25 07:07:22 +02:00
Cthulhu-throwaway 07e03c86fa (Network/Vita) Fix epoll's timeout parameter (#14216) 2022-07-25 07:07:14 +02:00
libretroadmin a6a4b845a4 Some string simplifications - don't NULL terminate if we pass
string to strlcpy and/or a file_path function using strlcpy under
the hood - don't do strlcpy for trivial setting of 2/3 char strings
2022-07-25 04:39:08 +02:00
github-actions ddd9544a4f Fetch translations from Crowdin 2022-07-25 00:12:34 +00:00
TheRhysWyrill 54d0d84696 Fixed Purple Rain Theme (#14214)
* Add Purple Rain Theme
2022-07-25 00:44:31 +02:00
TheRhysWyrill 522d1ed16d Add Purple Rain Theme (#14212)
* Add Purple Rain Theme

* Revert "Add Purple Rain Theme"

This reverts commit ceb896785b.

* Add Purple Rain Theme
2022-07-24 21:26:16 +02:00
libretroadmin 35d6c31b5b Solve some code analysis warnings 2022-07-24 11:27:39 +02:00
libretroadmin 5c98caa7fd Don't NULL-terminate string if we pass it to strlcpy and/or a
file_path function that calls strlcpy under the hood
2022-07-24 06:22:35 +02:00
libretroadmin 69a2d124c0 Don't do NULL termination on string if we pass it off to strlcpy
and/or a file_path function that uses strlcpy under the hood
2022-07-24 05:39:51 +02:00
Cthulhu-throwaway cc7c310aa1 (Netplay) Refactor fork arguments (#14208) 2022-07-24 04:26:50 +02:00
github-actions 83a7c0d798 Fetch translations from Crowdin 2022-07-24 00:14:07 +00:00
libretroadmin 34a18f64e8 Don't do NULL termination on string when we pass the string to
strlcpy and/or a file_path function that does strlcpy under the hood
2022-07-23 10:46:05 +02:00
Sergei Trofimovich f5ee9e74ba ui/drivers/cocoa: fix -fno-common build (#14204)
`llvm-11` changed the default from `-fcommon` to `-fno-common`:
  https://reviews.llvm.org/D75056

As a result build fails as:

    LD retroarch
    duplicate symbol '_apple_platform' in:
        obj-unix/release/ui/drivers/ui_cocoa.o
        obj-unix/release/ui/drivers/cocoa/cocoa_common.o
    duplicate symbol '_apple_platform' in:
        obj-unix/release/ui/drivers/ui_cocoa.o
        obj-unix/release/gfx/drivers_context/cocoa_gl_ctx.o
    ld: 2 duplicate symbols for architecture x86_64

The change moves `apple_platform` definition from `apple_platform.h`
to `cocoa_common.m` leaving only declaration in `apple_platform.h`.
2022-07-23 10:24:46 +02:00
Cthulhu-throwaway eb36c35ebf (Netplay) Fix content reload deadlocks on static core platforms #2 (#14202) 2022-07-23 03:08:26 +02:00
github-actions 8108931e04 Fetch translations from Crowdin 2022-07-23 00:13:04 +00:00
libretroadmin 30d38d108a Cleanups :
* Don't NULL terminate string if we pass to strlcpy and/or a file_path
function that uses strlcpy under the hood
* General cleanups in gfx_animation.c
2022-07-23 00:35:57 +02:00
libretroadmin e865ea83bd * Don't NULL terminate string if we pass it to strlcpy and/or a
file_path function that calls strlcpy under the hood
* Replace some snprintf calls to strlcpy/strlcat
2022-07-22 22:23:54 +02:00
libretroadmin 8d12918243 (libretro-common) Small cleanups - don't NULL-terminate string
if we pass it off to fill_pathname_join (or another function that
uses strlcpy under the hood)
2022-07-22 19:33:30 +02:00
sonninnos 1245cbc63b Widget color+position adjustments (#14195) 2022-07-22 02:36:49 +02:00
Cthulhu-throwaway 09d9366bc0 (Netplay) Fix content reload deadlocks on static core platforms (#14196) 2022-07-22 02:36:24 +02:00
libretroadmin d2aeba0a92 Cleanup - remove NULL-termination since we pass fullname now to
strlcpy always at first
2022-07-22 02:25:49 +02:00
libretroadmin 6cfcd749e4 (menu_driver.c)
* Fix issue 14190
* Simplify code by removing unneeded code
2022-07-22 02:13:18 +02:00
sonninnos 1f244aac01 (Ozone+XMB) Thumbnail improvements (#14188) 2022-07-21 15:25:12 +02:00
libretroadmin 3cf7e881ec Get rid of unnecessary log spam about non-required/non-essential files/directories 2022-07-21 03:48:11 +02:00
libretroadmin 2cf6f6ce8f * Don't do NULL termination on string if we pass it to strlcpy
* Cleanups in connmanctl.c - abuse of strlcat, strlcpy should
precede it first and/or other more optimal ways of setting the path
2022-07-21 01:47:34 +02:00
Cthulhu-throwaway ee9cb6cb1b (Netplay) Fix NAT traversal announce for HAVE_SOCKET_LEGACY platforms (#14191) 2022-07-21 01:30:38 +02:00
libretroadmin 05622ebe85 Some trivial strlen usage simplifications where possible, removing
the need for strlen
2022-07-20 17:23:28 +02:00
GABO1423 6d4a113eb4 (UWP) Misc. Changes (#14189) 2022-07-20 03:37:29 +02:00
libretroadmin ba35f0de93 (file_path.c) Do away with trivial strlen checks (checked if
return number was <= 2/>= 2, instead check first two characters
of the string directly instead for NULL
2022-07-19 23:23:37 +02:00
libretroadmin 7ff58265bf Simplify fopen_utf8 2022-07-19 21:31:26 +02:00
libretroadmin f994c0b371 Get rid of superfluous wrapper function config_entry_exists 2022-07-19 21:00:40 +02:00
libretroadmin 4b5c7856e6 Remove some more explicit NULL-termination when we're calling a
string function that calls strlcpy under the hood
2022-07-19 20:43:12 +02:00
libretroadmin a23231525d (Android) frontend_android_get_version_sdk - use strtol again - this
time assign the return value to the dereferenced pointer
2022-07-19 10:59:32 +02:00
libretroadmin 62fd667f41 (netplay_frontend.c) Remove unused variable 2022-07-19 10:35:38 +02:00
LibretroAdmin 29774f5b7a Small opts (#14186)
* (joypad_connection) Small optimizations -
* Turn functions static where possible
* Hose strlen call out of loop

* (input_driver.c) General cleanups:
* Some small code/style nits

task_screenshot.c:
* Move widget callback function for screenshots to task_screenshot.c

(file_path.c):
* Turn get_pathname_num_slashes into static function
* path_linked_list_free - always returns true, so get rid of return value
* path_linked_list_new - fix function signature
* path_get_archive_delim - do not NULL-terminate string, already done by strlcpy later on

General:
* Slight optimizations - use int/size_t for loop counter variable instead of unsigned
* Take advantage of fact that strlcpy already NULL-terminates, so don't do this explicitly
outside if we're just going to end up calling strlcpy/fill_pathname_join on it anyway
2022-07-19 10:01:33 +02:00
LibretroAdmin 87240556ea Should fix Android strtol regression (when converting from sscanf) (#14183) 2022-07-18 04:38:52 +02:00
libretroadmin fbd765f167 Change menu_setting.c back 2022-07-18 03:11:38 +02:00
libretroadmin a64f0332f9 Replace sscanf call in frontend_unix_get_os 2022-07-18 02:10:40 +02:00
libretroadmin 8f37c2e3c2 Don't call config_set_bool, call config_set_string directly 2022-07-18 01:59:32 +02:00
LibretroAdmin 71eb74d256 Update .gitlab-ci.yml - don't make ctr-legacy and djgpp depend on build pipeline pass
Set needs to []
2022-07-17 21:23:53 +02:00
Cthulhu-throwaway 83ed9a5980 (Network) Implement binary network streams (#14180) 2022-07-17 19:43:48 +02:00
libretroadmin de6c077e4d (menu_cbs_get_value.c) Small nits 2022-07-17 19:23:46 +02:00
libretroadmin 66ea402de8 We already check if descriptor is empty beforehand 2022-07-17 19:15:37 +02:00
libretroadmin a39532f19d (menu_cbs_get_value) Try to prevent assignments to string buffer if not needed 2022-07-17 18:59:21 +02:00
libretroadmin 610292db61 Replace more trivial sscanf usage with strtol 2022-07-17 18:38:28 +02:00
libretroadmin c89f6cf0a9 Replace more trivial usage of sscanf 2022-07-17 18:33:54 +02:00
libretroadmin 08cccc811c Some slight optimizations of menu callback functions - better variable
scoping
2022-07-17 18:09:28 +02:00
libretroadmin c3483654c9 Revert back to sscanf for versions of MSVC prior to MSVC2013 - prior
to MSVC2013, MSVC did not yet support strtof
2022-07-17 17:37:22 +02:00
libretroadmin 3ebfcbc7c7 setting_set_with_string_representation - avoid sscanf for trivial
operations when we can use strtol/strtoul/strtof
2022-07-17 09:46:27 +02:00
libretroadmin 27704a18de Remove unused core_info_hw_api_supported 2022-07-17 08:10:01 +02:00
libretroadmin 113b9e96d1 Miscellaneous cleanups to VFS layers:
* Indents
* Simplifications
2022-07-17 07:29:00 +02:00
libretroadmin e4b33fd0e6 (formats/json/rjson.c) Get rid of some implicit strlens and pass
size parameter to the functions instead˜
2022-07-17 06:58:22 +02:00
libretroadmin 0a12062e1c Remove unnecessary content_crc in bsv_movie_init_playback 2022-07-17 04:26:49 +02:00
github-actions dec0ee87d5 Fetch translations from Crowdin 2022-07-17 00:12:04 +00:00
Jacob 78c286471f Fixed typos in README.md (#14181)
In the requirements the section about Direct3D 11 had some typos
2022-07-16 22:01:15 +02:00
libretroadmin f990fa86fa (Freetype) Prevent potential free issue on WiiU - play it safe for
now until further clarified what is going on
2022-07-15 19:28:21 +02:00
libretroadmin b56b447f08 Fix these two memory errors that popped up with ASAN -
* Argument base for qsort cannot be NULL
* When system_count is 0 or less, early return out of explore_load_icons
2022-07-15 19:16:21 +02:00
libretroadmin c570e657c1 (CDROM) Fix memory leak caught with asan - buf passed to filestream_read_file
was not being freed after we were done with it (we are done with it after iterating
over the string list)
2022-07-15 19:00:59 +02:00
libretroadmin 5e13851a7a (Freetype) Fix severe memory leaks that happened after using FT_New_Memory_Face -
according to documentation note - 'You must not deallocate memory before calling
FT_Done_Face' - so store a pointer to the font data and then free it after calling
FT_Done_Face
2022-07-15 18:57:02 +02:00
libretroadmin 675ff6b9b6 net_http_send_str - reduce the amount of times strlen is called by
hardcoding the length when we feed the function a constant string
(with STRLEN_CONST)
2022-07-15 17:37:30 +02:00
libretroadmin 4b1766cf61 Silence more -Wdocumentation warnings 2022-07-15 01:12:04 +02:00
libretroadmin eb2c3e35d4 Silence some of the warnings being generated by Objective-C 2022-07-15 00:33:08 +02:00
libretroadmin c7c42409f1 Revert "Attempt to silence warnings by casting to socklen_t"
This reverts commit 6c8f649b02.
2022-07-14 22:51:17 +02:00
libretroadmin 6c8f649b02 Attempt to silence warnings by casting to socklen_t 2022-07-14 21:27:34 +02:00
Cthulhu-throwaway f5d46681c2 (UWP) Enable core downloader/updater (#14173) 2022-07-14 15:21:49 +02:00
github-actions c5c5e7539f Fetch translations from Crowdin 2022-07-13 00:14:08 +00:00
libretroadmin 37bb66ef6e (Freetype) Fix warnings 'local variable hides a parameter of the same name' 2022-07-12 22:37:17 +02:00
Cthulhu-throwaway 98ca6232aa (String) Some function fixes (#14171) 2022-07-12 22:32:58 +02:00
libretroadmin c4fb055fdb Cleanups:
* Combine early return and assignment lines
* use path_basename_nocompression when possible
* Move variables to proper scope
2022-07-12 20:44:00 +02:00
libretroadmin f7194e167f use path_basename_nocompression where it is safe to do so 2022-07-12 19:14:12 +02:00
libretroadmin 69ddf03c91 Remove unused return variables 2022-07-12 18:00:33 +02:00
libretroadmin ec70bb84ca Remove unused variable 2022-07-12 17:31:47 +02:00
libretroadmin 83655420f6 file_list_prepend just a thin wrapper around file_list_insert - get
rid of it and just pass 0 as the last argument instead
2022-07-12 16:56:44 +02:00
libretroadmin 06e1b6a68f Revert "Move strftime_am_pm to libretro-common rtime.c, remove duplicate"
This reverts commit 99186b1056.
2022-07-12 03:31:42 +02:00
libretroadmin 99186b1056 Move strftime_am_pm to libretro-common rtime.c, remove duplicate
functions
2022-07-12 03:29:16 +02:00
Cthulhu-throwaway f39df40728 (String) Do not assume char is unsigned (#14168) 2022-07-12 02:55:56 +02:00
github-actions 33386787b6 Fetch translations from Crowdin 2022-07-12 00:11:49 +00:00
libretroadmin 01d68fdb7e Remove unused fill_pathname_basedir_noext 2022-07-12 00:09:22 +02:00
libretroadmin 293722ac38 Get rid of fill_pathname_join_concat_ext 2022-07-11 22:01:20 +02:00
libretroadmin b7926605f4 Remove fill_short_pathname_representation 2022-07-11 21:40:09 +02:00
libretroadmin b1c9f93903 (file_path) remove deprecated functions 2022-07-11 21:29:01 +02:00
Cthulhu-throwaway da53b24c6c (Localization/PT-BR) Fix some bad localization (#14167) 2022-07-11 20:21:40 +02:00
libretroadmin adf9994828 Deprecate fill_pathname_base_noext 2022-07-11 20:13:44 +02:00
libretroadmin 7186d75c44 Designate fill_pathname_noext as deprecated function 2022-07-11 20:03:42 +02:00
libretroadmin d706c9c5bf Start deprecating trivial functions in file_path.c 2022-07-11 19:56:46 +02:00
libretroadmin 4bcc479041 Further refinement of function 2022-07-11 19:14:48 +02:00
libretroadmin 6475d0ca54 Make code identical for last_played_strftime and strftime_am_pm -
see opportunity here to cutdown on duplication and make this a public
function
2022-07-11 19:12:14 +02:00
libretroadmin e91cf0e40d No longer use fill_pathname_noext - just basic strlcpy/strlcat string
concatenation
2022-07-11 18:48:02 +02:00
libretroadmin 7b83636b64 Remove variables that are never used because the return value
of the function is already used instead
2022-07-11 18:15:08 +02:00
libretroadmin 0d4ef1cef4 (file_path.c) Call trivial strlcpy/strlcat operations directly
instead of going through functions
2022-07-11 17:23:06 +02:00
libretroadmin 6438d575d4 (file_path.c) Simplifications 2022-07-11 17:14:09 +02:00
libretroadmin f8d14a0af6 (net_http) Simplify net_http_update - get rid of the majority of
gotos
2022-07-11 16:50:32 +02:00
libretroadmin 99ac1af9d2 (video_shader_parse)
* Return value of function was never used, so remove it
* Move variables to proper scope
* Miscellaneous cleanups
2022-07-11 14:00:35 +02:00
libretroadmin 61ba6d06cc (config_file.c) Cleanups - config_file_extract_value - only
one of three instances used the 'use_value' parameter, so take it
out of the function
2022-07-11 12:58:03 +02:00
github-actions e275e9d64e Fetch translations from Crowdin 2022-07-11 00:11:52 +00:00
libretroadmin 9e430cd8b9 (libretro-common) Cleanups:
* Work more with return values, prevent unnecessary local stack variables
when possible
* Reduce lines of code
* Move local stack variables to proper scope
2022-07-10 19:06:18 +02:00
libretroadmin 0e85113eb3 (libretro-common) Style nits/cleanups 2022-07-10 18:13:49 +02:00
github-actions 79fc6d3b50 Fetch translations from Crowdin 2022-07-10 00:13:42 +00:00
sonninnos b44ad6f890 (WIN32) Skip console attach when logging to file (#14163) 2022-07-09 19:22:59 +02:00
libretroadmin 05fb6fd9a3 task_push_load_content_playlist_from_menu - cleanup error_string 2022-07-09 18:43:44 +02:00
libretroadmin 3b2b4ea49d (task_content.c) Cleanups - remove error_string where not used 2022-07-09 18:41:18 +02:00
libretroadmin cda235d124 (task_autodetect.c) Cleanups - don't check for variables that
we already know are non-NULL, cleanup variable scope, etc.
2022-07-09 18:08:25 +02:00
libretroadmin ad87f88b72 (task_pl_thumbnail_download.c) Minor cleanups/style nits - reducing
return paths
2022-07-09 17:13:26 +02:00
libretroadmin f78f64f6be (task_core_updater) small cleanups -
* Get rid of early returns where not necessary
* Reduce return paths to one where possible
2022-07-09 16:52:43 +02:00
Cthulhu-throwaway 177691e6fa (Core Info) Ensure current core info is initialized at runloop_event_init_core when netplay is enabled (#14162) 2022-07-09 16:25:27 +02:00
libretroadmin 285d89b7d9 (win32_common.c) Optimize win32_save_positions - is always called whenever the window moves around (WM_MOVE) so is worth optimizing
- Get rid of memset, set the member variables to 0 manually instead. Note - rcDevice is behind a _MAC ifdef in the headers (some hypothetical Mac port
of Windows which never happened and therefore the ifdef is useless), so rcDevice is not set and will just be unused anyway
- Variable scoping, move variables to where they are needed
2022-07-09 16:16:23 +02:00
libretroadmin c54499c5fb (Ozone) Simplify code 2022-07-09 14:29:49 +02:00
libretroadmin aae8c65880 Prevent unnecessary variable self-assignments caused by tertiary
operators - also simplify focused variable assignment
2022-07-09 13:58:10 +02:00
libretroadmin 0f24d52407 audio_driver_mixer_add_stream - add fall-through - simplify code 2022-07-09 13:44:55 +02:00
libretroadmin a9b074fa0a Rewrite content_file_list_init - check return value first before assigning it 2022-07-09 13:32:38 +02:00
libretroadmin 274ce86d89 content_file_list_init - size < 1 will never happen, checked outside
before calling the function
2022-07-09 13:24:01 +02:00
libretroadmin c2f618d394 * (gfx_widgets) ptr_width >= ptr_height - equal would just mean setting ptr_width to
the same value, so turn it into 'greater than' instead
* Avoid some tertiary operators where we just set the variable back to its
own value
2022-07-09 13:00:50 +02:00
libretroadmin 4d3587a2e8 Cleanups in task_content.c -
split up some code between HAVE_MENU and whatnot
2022-07-09 02:07:34 +02:00
github-actions 126c2fa7ac Fetch translations from Crowdin 2022-07-09 00:10:35 +00:00
libretroadmin 460ca09c87 (task_http) Cleanups 2022-07-09 01:24:59 +02:00
libretroadmin fa9e56d824 input_autoconfigure_connect - have boolean return value
- task_autodetect.c - cleanups, try to do less with generic
error labels and gotos, etc.
2022-07-09 00:53:08 +02:00
libretroadmin 81de36e1ff (GL1/GL2 Raster fonts) remove dead code 2022-07-08 22:46:03 +02:00
libretroadmin 7f3930b71b (platform_win32.c) Style nits 2022-07-08 22:23:12 +02:00
libretroadmin d95e426b4e (Platform drivers) Cleanups - get rid of unnecessary logs
(VGA Font driver) Get rid of unused code by if 0ing it out
2022-07-08 22:10:53 +02:00
libretroadmin e53a623f4a (dispserv_win32.c) General cleanups 2022-07-08 21:45:04 +02:00
libretroadmin 71a3c24d52 (Vulkan) Solve some warnings - set VkResult variables to VK_SUCCESS
by default
2022-07-08 21:32:19 +02:00
libretroadmin 14afdf0e87 (Android) Backport https://github.com/robinei/RetroArch/commit/2020e9ce6a15a9d87777fd26ecf10f6ab8cf7ecc -
* Gingerbread support
* Touchpads support
* builtin Xperia Play autoconfig profile
2022-07-08 21:03:19 +02:00
Cthulhu-throwaway ef022ffe90 (Netplay) Force a core update when starting netplay (#14157) 2022-07-08 18:20:01 +02:00
libretroadmin a6516512b6 (font_driver.c) Some cleanups - remove unnecessary log messages
that were dependent on a global variable - move a conditional outside
for get_text_replacement
2022-07-08 16:03:58 +02:00
github-actions 882829cafc Fetch translations from Crowdin 2022-07-08 00:13:42 +00:00
libretroadmin 6fadb1bbf0 (PS2 Font driver) Buildfix 2022-07-07 21:35:45 +02:00
libretroadmin 3494c0de0a (Caca/GDI/Sixel/VGA) Did not have proper implemented free functions 2022-07-07 21:29:14 +02:00
Cthulhu-throwaway af71dcb893 (Netplay) Memory leak fix (#14154) 2022-07-07 21:14:38 +02:00
Cthulhu-throwaway a87e95ad8f (Netplay) Fix input for some cores when hosting (#14153) 2022-07-07 20:59:12 +02:00
libretroadmin c19e24a584 (font drivers) Simplify render_line functions 2022-07-07 19:51:36 +02:00
libretroadmin 281a498474 Backport https://github.com/robinei/RetroArch/commit/05a98b7efe68c1df3d56c0c4512d40aea1c0ff7c
- fix off by one error for input_block_timeout setting
also default to 0 for this setting (pretty massive performance gain)
2022-07-07 18:03:45 +02:00
libretroadmin b023001d29 (Win32/taskbar) Backport m4xw commit - Release ITaskbarList3 on failed HrInit
The pointer wasn't NULL'd, thus set_window_progress would cause weird behavior
2022-07-07 17:58:48 +02:00
libretroadmin a547abbbaf (gfx_animation.c) Cleanups - use float constant values -
and get rid of some tertiary operators where unnecessary
2022-07-07 16:56:54 +02:00
libretroadmin cd28d5ec8a (PSL1GHT/Switch) Fix warnings 2022-07-07 16:38:12 +02:00
Cthulhu-throwaway 9af17b633e (Netplay) Host Ban Submenu (#14151) 2022-07-07 16:08:46 +02:00
LibretroAdmin f9c6ccee75 Update crowdin.yml 2022-07-07 15:55:08 +02:00
LibretroAdmin 91a351adf8 Update crowdin-daily.yml 2022-07-07 15:54:26 +02:00
LibretroAdmin 20ad96355f Update crowdin-daily.yml 2022-07-07 14:29:02 +02:00
Cthulhu-throwaway c6e0e7e198 (Netplay) Support for banning clients (#14146) 2022-07-07 13:40:38 +02:00
libretroadmin 6318e5da5e (Configuration.c) simplify some code 2022-07-07 10:45:15 +02:00
libretroadmin 2daeb23504 input_remapping_save_file - optimization from https://github.com/neil4/RetroArch-Lite/commit/5a451f6324d1250fb45d8e957c3544fbccb5d565 -
existing remapping file was needlessly reloaded
2022-07-07 10:33:31 +02:00
libretroadmin 19b2ad56b0 (gfx_animation.c) Cleanups; prevent useless tertiary operators where
possible
2022-07-07 10:03:33 +02:00
libretroadmin 547c88259d (Qt) Replace some unnecessary pow usage 2022-07-07 09:27:16 +02:00
libretroadmin 6df4ab4982 gfx_animation - use direct multiplication instead of pow when exponent
is an integer. Also try to use float values instead of implicit double
values
2022-07-07 09:15:35 +02:00
libretroadmin 92264826de (gfx_display.c) Cleanups -
- get rid of unused gfx_display_driver_exists
- get rid of useless wrapper function gfx_display_font_init_first
- rewrite gfx_display_font_file somewhat
2022-07-06 20:05:43 +02:00
libretroadmin aeb07432cc gfx_display_draw_keyboard - we don't need mymat and/or
gfx_display_rotate_z here
2022-07-06 19:20:41 +02:00
libretroadmin 821bb86b37 Get rid of HAVE_THREADS macros 2022-07-06 15:01:53 +02:00
libretroadmin b6c9740ba3 Get rid of gfx_timer_t typedef - replace with float 2022-07-06 14:41:15 +02:00
libretroadmin 3c20e709ea Move gfx_display_reset_textures_list_buffer to gfx_display.c 2022-07-06 13:11:44 +02:00
libretroadmin 3aafa40c69 Bugfix for previous commit - cosine/sine were wrong 2022-07-06 12:09:08 +02:00
libretroadmin bb6937949d gfx_widget_draw_icon optimization - if radians is 0, we know cosine and
sine already. Avoid sinf/cosf computation when possible
2022-07-06 11:40:59 +02:00
libretroadmin bf5409881c gfx_display_rotate_z optimizations - if radians is 0, we know cosine
and sine already. Avoid the computation with sinf/cosf and pass it as value to the
function when possible
2022-07-06 11:03:15 +02:00
libretroadmin 6607ff3aaa rotate_draw - get rid of scale_x/y/enable - scaling is only done now
in XMB at two spots - refactor gfx_display_rotate_z so that it only
manipulates the input matrix' Z axis
2022-07-05 20:50:01 +02:00
libretroadmin 95db09d8c5 Move bundle_assets_{src/dst} to settings->paths 2022-07-05 19:15:29 +02:00
libretroadmin fbd37f8926 Consistency in variable naming conventions - rename temp_path to tmp_path
for uniformity with rest of code
2022-07-05 19:06:38 +02:00
libretroadmin f12ad9ed34 Simplify audio mixer functions 2022-07-05 18:57:56 +02:00
libretroadmin 69605b7c9c (task_screenshot.c) Simplify code 2022-07-05 18:15:12 +02:00
libretroadmin 2d33c49b26 (FPGA Gfx) get rid of unused viewport_info/read_viewport functions 2022-07-05 18:02:52 +02:00
libretroadmin 336ca1a68c Don't call gfx_display_rotate_z unless the display driver implementation's
'handles_transform' is set to false
2022-07-05 17:20:01 +02:00
libretroadmin 1798651041 (gfx_widgets) scale_enable can b set to false for widgets, scale_factor was always 1.0f
(XMB) set scale_enable to false when scale_factor is 1.0f
2022-07-05 14:18:20 +02:00
libretroadmin 681e1dea94 gfx_display_rotate_z - if scale_x/y/z are all 1.0f, then set
scale_enable to false
2022-07-05 14:02:38 +02:00
sonninnos 494c93df3e Thumbnail aspect ratio fix (#14145) 2022-07-05 12:01:21 +02:00
libretroadmin 9dd1fb895b - Turn rotation arrows static where possible
- Don't call matrix_4x4_rotate_z - inline the code instead
2022-07-04 15:28:54 +02:00
Cthulhu-throwaway 0b2be028ca (Netplay) Fix client info devices index (#14142) 2022-07-04 04:00:55 +02:00
libretroadmin 794e088ae1 (C89_BUILD) Buildfix 2022-07-03 18:18:52 +02:00
sonninnos 7043873fba Reformat rdb_entry_int (#14140) 2022-07-03 17:46:03 +02:00
libretroadmin 50873f7c38 Simplify gfx_display_rotate_z 2022-07-03 17:38:09 +02:00
sonninnos 91c8541e20 (Ozone+XMB) Savestate thumbnail aspect ratio (#14139) 2022-07-03 16:14:51 +02:00
libretroadmin b021f96522 (PSL1GHT) Silence some warnings 2022-07-03 14:20:10 +02:00
libretroadmin cd36af1d24 Use NAME_MAX_LENGTH for some char array variables that have a fixed
width of 256
2022-07-03 13:59:23 +02:00
Cthulhu-throwaway b55fa28896 (Netplay/Menu) Localize relay servers (#14136) 2022-07-03 13:45:13 +02:00
Cthulhu-throwaway 42f75e7f72 (Netplay/Menu) Add client devices info to the kick sub-menu (#14138) 2022-07-03 13:44:46 +02:00
dependabot[bot] 61bf5fba91 Bump actions/checkout from 2 to 3 (#14130)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-02 14:09:29 +02:00
dependabot[bot] 602b3fc43f Bump actions/upload-artifact from 2 to 3 (#14129)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-02 14:09:19 +02:00
dependabot[bot] d69f1e46ab Bump actions/setup-python from 2 to 4 (#14128)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-02 14:09:12 +02:00
dependabot[bot] c97492f85c Bump actions/setup-java from 1 to 3 (#14127)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 1 to 3.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-02 14:09:00 +02:00
sonninnos ed83f0e7be Fix and cleanup playlist last played 'Ago' (#14132) 2022-07-02 14:08:41 +02:00
sonninnos ee8993c76a Silence Linux snprintf warnings (#14131) 2022-07-02 14:08:27 +02:00
Naveen df25f88432 chore: Included githubactions in the dependabot config (#14126)
This should help with keeping the GitHub actions updated on new releases. This will also help with keeping it secure.

Dependabot helps in keeping the supply chain secure https://docs.github.com/en/code-security/dependabot

GitHub actions up to date https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot

https://github.com/ossf/scorecard/blob/main/docs/checks.md#dependency-update-tool
Signed-off-by: naveen <[email protected]>
2022-07-02 08:37:20 +02:00
github-actions 89048993ef Fetch translations from Crowdin 2022-07-02 00:12:03 +00:00
aldebaran27 58decac935 Increase DEFAULT_MAX_PADS to 8 for ODROIDGO2, since that impacts the RG351[X] consoles. The RG351[X] have a USB host controller and can have an arbitrary number of USB gamepads. (#14122) 2022-07-02 01:06:46 +02:00
Cthulhu-throwaway 78bc42de68 (Netplay/Lobby) Add setting for filtering out rooms with non-installed cores (#14124) 2022-07-02 00:24:33 +02:00
Cthulhu-throwaway e7b9ff1ff6 (Netplay) Minor tweaks to the find content task (#14125) 2022-07-02 00:24:16 +02:00
sonninnos 0232fc8e10 (Ozone+XMB) Savestate thumbnail fullscreen + dropdown (#14116)
* (Ozone+XMB) Savestate thumbnail fullscreen toggle

* (Ozone+XMB) Savestate thumbnail dropdown
2022-07-01 23:41:46 +02:00
libretroadmin f4803b1023 Silence warning - video_shader_is_shader_chain_config 2022-07-01 14:16:13 +02:00
libretroadmin 126940a98b Silence unused variable warnings for Emscripten 2022-07-01 13:49:49 +02:00
Naveen 6bc73ed8af chore: Set permissions for GitHub actions (#14120)
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: naveen <[email protected]>
2022-07-01 07:43:08 +02:00
Cthulhu-throwaway ab208fca91 (Netplay) Ensure current content is reloaded before joining a host (#14117) 2022-07-01 01:02:04 +02:00
Cthulhu-throwaway 58fc77850c (Netplay/Lobby) Hide older (incompatible) rooms (#14118) 2022-07-01 01:01:24 +02:00
barbudreadmon e9d67f2bbe savestates: implement an api call for context awareness (#14101) 2022-06-30 10:45:59 +02:00
Cthulhu-throwaway a5ebfc442a (Netplay) Disallow clients from loading states and resetting (#14114) 2022-06-30 09:48:51 +02:00
github-actions 8583038d7f Fetch translations from Crowdin 2022-06-30 00:12:09 +00:00
Cthulhu-throwaway 5b6d11cc60 (Netplay) Special saves directory for clients (#14111) 2022-06-29 10:18:39 +02:00
github-actions 11101f23b1 Fetch translations from Crowdin 2022-06-28 00:12:59 +00:00
Anders Storhaug 8addb08250 (Win32) Remove black margins with borderless non-fullscreen window (#14098) 2022-06-27 07:30:51 +02:00
libretroadmin 0172d57ada (CTR) Simply font_render_driver_bottom 2022-06-27 02:46:13 +02:00
github-actions 2fb55f86bd Fetch translations from Crowdin 2022-06-27 00:11:56 +00:00
libretroadmin ce1d1fd430 (font_driver.c) Simplify code - get rid of unneeded array loops 2022-06-27 01:04:14 +02:00
Cthulhu-throwaway f2b3948b39 (UPnP) Attempt support for remaining platforms (#14107) 2022-06-26 21:38:52 +02:00
libretroadmin 128753c81d (Freetype) Use FT_New_Memory_Face instead of FT_New_Face to load
font from memory - first read it from file to memory beforehand -
this solves an asset extraction issue when selecting 'Update Assets' -
apparently FT_New_Face keeps an open file handle to the font file which
prevents it from being overwritten/deleted while the program is still
running.
TODO/FIXME - move file loading code out of the font renderer init function
and move it higher level
2022-06-26 20:38:46 +02:00
libretroadmin 367dfd6e71 No longer include file_path_special.h in gfx_display.h 2022-06-26 18:35:07 +02:00
libretroadmin 4e13134c40 Remove unnecessary wrapper function gfx_display_font - just wrapped
around gfx_display_font_file
2022-06-26 18:19:43 +02:00
libretroadmin cf12a5e7e7 (Font drivers) Uniformity in naming conventions 2022-06-26 18:01:43 +02:00
libretroadmin aab64da1be (Font driver/drivers display) All the font_init_first implementations
were exactly the same, cut down on code duplication
2022-06-26 17:27:59 +02:00
Cthulhu-throwaway 6aa16442db (Network/Wii) Enable net_ifinfo for some features (#14106) 2022-06-26 16:37:05 +02:00
libretroadmin 38f6ad95f4 (Winraw) Get rid of some debug logs 2022-06-26 06:12:30 +02:00
github-actions a6538d0d9c Fetch translations from Crowdin 2022-06-26 00:13:30 +00:00
Cthulhu-throwaway bc78e423ee (WiiU) Buildfix 2 (#14104) 2022-06-25 19:47:23 +02:00
Cthulhu-throwaway e961f27786 (WiiU) Buildfix (#14103) 2022-06-25 19:19:26 +02:00
Cthulhu-throwaway 14e5cd317b (Network) net_ifinfo refactor (#14102) 2022-06-25 16:37:12 +02:00
Cthulhu-throwaway a7dc57f68f (Network) Move the addr_6to4 function to a proper place (#14100) 2022-06-25 09:18:32 +02:00
github-actions 865993ffa7 Fetch translations from Crowdin 2022-06-25 00:11:13 +00:00
Cthulhu-throwaway 8c6c399a01 (Network) Move the HAVE_INET6 macro to a proper place (#14096) 2022-06-25 00:54:39 +01:00
github-actions 456fb6f2c9 Fetch translations from Crowdin 2022-06-24 00:11:34 +00:00
libretroadmin 41a073da73 (gfx_display_metal) Change ident name - should fix #14094 2022-06-23 18:39:24 +02:00
Cthulhu-throwaway c1e8925f87 (Netplay) Find content task refactor (#14089) 2022-06-23 14:48:57 +02:00
sonninnos 7553dc66b5 Add missing sublabels for non-running Quick Menu (#14090) 2022-06-23 14:47:54 +02:00
sonninnos bd9eda38e3 Reorganize Quick Menu Information (#14091) 2022-06-23 14:47:29 +02:00
Cthulhu-throwaway 2a0fce77d3 (Wii) Silence some warnings (#14092) 2022-06-23 14:46:53 +02:00
sonninnos 3615deed9e Savestate thumbnails (#14093)
* Savestate slot reset action

* (Ozone) Thumbnail visibility corrections
2022-06-23 14:46:29 +02:00
github-actions ad64159fe4 Fetch translations from Crowdin 2022-06-23 00:11:31 +00:00
sonninnos 745652bbbf (Ozone) Playlist metadata reformat (#14082) 2022-06-22 22:56:03 +02:00
sonninnos 10a2103f7e (GLUI) Add icon for 'Download Thumbnails' (#14084) 2022-06-22 22:55:38 +02:00
sonninnos 860155969e Add 'Ago' to playlist last played styles (#14086) 2022-06-22 22:55:32 +02:00
github-actions 28a41ad1b1 Fetch translations from Crowdin 2022-06-22 00:12:57 +00:00
sonninnos 807fd35300 (Ozone) Savestate thumbnail fixes (#14079) 2022-06-21 22:37:39 +02:00
libretroadmin bb15f009e4 Simplify gfx_display_check_compatibility 2022-06-21 19:45:27 +02:00
sonninnos 1ad9b20b09 (WinRaw) Clear key states when unfocused (#14080) 2022-06-21 18:01:28 +02:00
libretroadmin fae8d7e38f (Debug) Fix build failure 2022-06-21 03:33:36 +02:00
github-actions 961357137f Fetch translations from Crowdin 2022-06-21 00:11:07 +00:00
sonninnos 645b4864fc Allow changing savestate slots with left/right on save/load (#14078) 2022-06-21 00:57:04 +02:00
libretroadmin 61e08ee35b Fix line breaks in gfx/video_driver.c 2022-06-20 20:26:02 +02:00
libretroadmin 0356c563b8 Simplify gfx_display_check_compatibility 2022-06-20 20:19:16 +02:00
sonninnos 44a52b4617 Better Disc Control append focus (#14075) 2022-06-20 18:07:46 +02:00
sonninnos 2ff77a363e (Ozone) Add savestate thumbnails (#14068) 2022-06-20 16:34:41 +02:00
github-actions 3c89172516 Fetch translations from Crowdin 2022-06-20 00:10:53 +00:00
sonninnos a0bfdcce3b (D3D11/12) Make waitable swapchains optional (#14074) 2022-06-19 21:25:37 +02:00
libretroadmin e954a69708 Truncation is intentional - see if using the return value and storing it
in a local var can work around the warning
2022-06-19 19:20:19 +02:00
libretroadmin a06f3b98ce For Griffin builds it is important this define does not get redefined
Note to Cthulhu: We should probably put this in a header file somewhere
2022-06-19 18:43:25 +02:00
libretroadmin 01eab0fba5 (3DS/CTR) Take out HAVE_SOCKET_LEGACY for 3DS as per Cthulhu recommendation
and instead put in the extra conditional for natt.c and netplay_frontend.c
2022-06-19 18:32:26 +02:00
libretroadmin 64bf25542f Android has HAVE_TRANSLATE defined but not HAVE_ACCESSIBILITY, so
add this to the conditional
2022-06-19 18:24:07 +02:00
libretroadmin e0c7e78e27 netplay_frontend.c - show_chat() - prevent warning 'format truncation' -
snprintf output between 3 and 129 bytes into a destination of size 96
2022-06-19 18:19:47 +02:00
libretroadmin cf67c102ed command_event - access_st local variable is unused when HAVE_ACCESSIBILITY
is not defined
2022-06-19 18:17:00 +02:00
libretroadmin 050107a90e (Cheevos) On platforms like WiiU that have cheevos support but no threading support, it was complaining about unused variables like rcheevos_locals. The macros for
slock_lock/slock_unlock seem needless anyway, so we just reference slock_lock/slock_unlock directly and put it behind
HAVE_THREADS ifdefs so the user/programmer knows what is going on
2022-06-19 18:06:17 +02:00
libretroadmin f0e340fd23 (3DS/CTR) Now that 3DS/CTR defines HAVE_SOCKET_LEGACY, we don't need
this conditional anymore
2022-06-19 17:57:50 +02:00
libretroadmin 757b0642ba (3DS/CTR) Define HAVE_SOCKET_LEGACY 2022-06-19 17:36:23 +02:00
Cthulhu-throwaway 216489512c (UPnP) Support for IPv4 tunneling (#14067) 2022-06-19 14:40:14 +02:00
libretroadmin 278f088c99 Fix 'function declaration is not a prototype' warning on Clang/Mac 2022-06-19 14:09:55 +02:00
sonninnos ca0b3095e8 (D3D11/12) Make low-latency optional (#14073) 2022-06-19 14:14:34 +02:00
Cthulhu-throwaway dabd9cb996 (Netplay/LAN Discovery) Task refactor (#14070) 2022-06-19 03:41:04 +02:00
LibretroAdmin 0008691aa0 Remove unused variables (#14065) 2022-06-18 19:28:07 +02:00
libretroadmin 60161982b2 (task_database) Simplify code - put logging behind DEBUG ifdef 2022-06-18 19:19:18 +02:00
libretroadmin 8bad1559f9 (task_database_cue.c) strlen returns value of size_t type, change variables
(task_database_cue.c) Comment out log and put it behind DEBUG ifdef
2022-06-18 19:12:03 +02:00
libretroadmin 4f1ad9b665 video_shader_load_preset_into_shader - remove unused variable 2022-06-18 19:08:30 +02:00
LibretroAdmin 4a38831c47 Try to reduce fixed size char arrays from PATH_MAX_LENGTH to lower sizes (#14062)
* Try to reduce fixed size char arrays from PATH_MAX_LENGTH to lower sizes
2022-06-18 19:07:15 +02:00
LibretroAdmin 9a1f678e31 Merge pull request #14064 from farmerbb/master
Add F-Droid metadata to repo in Fastlane format
2022-06-18 18:02:51 +01:00
LibretroAdmin d7f827d5ad Merge pull request #14066 from Cthulhu-throwaway/netplay-cleanup-loc
(Netplay/Lobby) Remove help placeholder text for rooms
2022-06-18 18:02:30 +01:00
Cthulhu-throwaway 9715c0dbb3 (Netplay/Lobby) Remove help placeholder text for rooms 2022-06-18 13:56:35 -03:00
Braden Farmer a71b4c421e Add F-Droid metadata to repo in Fastlane format 2022-06-18 10:30:13 -06:00
LibretroAdmin 852b3f2071 Merge pull request #14061 from Cthulhu-throwaway/netplay-buildfix
(Netplay) Buildfix for some "dumber" compilers
2022-06-18 16:32:13 +01:00
Cthulhu-throwaway e6e5e46be3 (Netplay) Buildfix for some "dumber" compilers 2022-06-18 12:10:01 -03:00
LibretroAdmin fcf8d2e5b7 Merge pull request #14058 from sonninnos/shader-icons
Add proper icons for shader items
2022-06-18 13:27:45 +01:00
LibretroAdmin 054bf83f53 Merge pull request #14056 from sonninnos/disc-append-browsed
Disc Control append focus correction
2022-06-18 13:26:48 +01:00
sonninnos 1539e720f1 Add proper icons for shader items 2022-06-18 11:22:50 +03:00
LibretroAdmin 1dc7481139 Merge pull request #14057 from sonninnos/fill-title
Reformat fill titles
2022-06-18 07:14:55 +01:00
sonninnos 8ec6c7517c Reformat fill titles 2022-06-18 09:06:52 +03:00
sonninnos 5c9501b4c4 Disc Control append focus correction 2022-06-18 08:54:14 +03:00
LibretroAdmin 838e5117d0 Merge pull request #14054 from Cthulhu-throwaway/netplay-refactor
(Netplay) Some refactoring and fixes
2022-06-18 03:28:47 +01:00
Cthulhu-throwaway 7e798d04ba (Netplay) Some refactoring and fixes 2022-06-17 18:00:48 -03:00
LibretroAdmin 244ace9c9d Merge pull request #14053 from libretro/qt-new-url
(Qt) Use new URL for scraping thumbnails
2022-06-17 19:43:08 +01:00
LibretroAdmin f24ced37e8 Merge pull request #14052 from sonninnos/database-title
Reformat database titles
2022-06-17 18:32:37 +01:00
libretroadmin e9b8602c6e Get rid of debug logs 2022-06-17 19:14:18 +02:00
libretroadmin e3a716d06a (Qt) Use new URL for scraping thumbnails 2022-06-17 19:10:29 +02:00
sonninnos 72d38a4b3c Reformat database titles 2022-06-17 20:01:46 +03:00
LibretroAdmin ef53037cdc Merge pull request #14051 from sonninnos/database-icon
More suitable icons for database entries
2022-06-17 16:53:23 +01:00
sonninnos 325ba96613 More suitable icons for database entries 2022-06-17 18:10:08 +03:00
LibretroAdmin 48f13dfaaa Merge pull request #14047 from StormedBubbles/lightgun_y_axis
Fix lightgun scaling on Y axis
2022-06-17 15:12:54 +01:00
LibretroAdmin 0fe694665c Merge pull request #14050 from sonninnos/ozone-header-icon-spacing
(Ozone) Header icon spacing adjustment
2022-06-17 14:05:10 +01:00
sonninnos 098f14dcd4 (Ozone) Header icon spacing adjustment 2022-06-17 15:23:42 +03:00
StormedBubbles 53d0e161e1 Fix lightgun scaling on Y axis 2022-06-16 22:16:32 -04:00
github-actions a69387089c Fetch translations from Crowdin 2022-06-17 00:11:36 +00:00
LibretroAdmin 50f65a893f Merge pull request #14044 from sonninnos/overlay-pointer
Block pointer input when overlay is pressed
2022-06-16 15:42:57 +01:00
sonninnos 53be17aee2 Block pointer input when overlay is pressed 2022-06-16 16:49:51 +03:00
LibretroAdmin e759f81149 Merge pull request #14042 from sonninnos/winraw-pointer
(WINRAW) Fix pointer device position
2022-06-16 12:45:05 +01:00
sonninnos 8d9f772dce (WINRAW) Fix pointer device position 2022-06-16 11:34:54 +03:00
github-actions 702a7b37ad Fetch translations from Crowdin 2022-06-16 00:11:14 +00:00
LibretroAdmin 109b6f9781 Merge pull request #14039 from sonninnos/d3d11-vblank
(D3D11/12) Reduce lag with WaitForVBlank
2022-06-15 19:23:17 +01:00
github-actions ff2d6f65d8 Fetch translations from Crowdin 2022-06-15 00:13:27 +00:00
LibretroAdmin 56ca328d95 Merge pull request #14038 from sonninnos/win32-update-title
(WIN32) Don't update title on every frame
2022-06-14 15:13:22 +01:00
sonninnos 31a43b9390 (D3D11/12) Reduce lag with WaitForVBlank 2022-06-14 16:49:30 +03:00
sonninnos b444377b50 (WIN32) Don't update title on every frame 2022-06-14 16:43:32 +03:00
LibretroAdmin a5d145e211 Merge pull request #14036 from sonninnos/frame-delay-auto
Automatic Frame Delay improvements
2022-06-14 12:33:17 +01:00
sonninnos 3d619de114 Automatic Frame Delay improvements 2022-06-14 07:11:43 +03:00
libretroadmin 844d27c315 (libretro-common) Resync 2022-06-13 18:56:28 +02:00
LibretroAdmin 7fecaf6182 Merge pull request #14035 from Cthulhu-throwaway/poll-ext
(Network) Replace socket_select calls
2022-06-12 14:20:59 +01:00
LibretroAdmin dcaba084f9 Merge pull request #14033 from phcoder/miyoorewind
Enable rewind on miyoo
2022-06-12 11:43:20 +01:00
Cthulhu-throwaway 43ad2b64b2 (Network) Replace socket_select calls 2022-06-12 02:13:34 -03:00
Vladimir Serbinenko c597583816 Enable rewind on miyoo
Tested on my PowKiddy V90
2022-06-12 03:35:22 +02:00
github-actions 1e4042d08b Fetch translations from Crowdin 2022-06-11 00:10:31 +00:00
LibretroAdmin 13732ba0da Merge pull request #14030 from Cthulhu-throwaway/wii-buildfix-ext-2
Wii buildfix (round 3)
2022-06-10 18:36:06 +01:00
Cthulhu-throwaway fed60aaee6 Wii buildfix (round 3)
Annoying preprocessor...
2022-06-10 14:34:54 -03:00
LibretroAdmin 423cc50b6d Merge pull request #14029 from Cthulhu-throwaway/wii-buildfix-ext
Wii buildfix (round 2)
2022-06-10 18:17:40 +01:00
Cthulhu-throwaway a6e5811dc7 Wii buildfix (round 2) 2022-06-10 14:06:02 -03:00
LibretroAdmin 856bfb75ee Merge pull request #14028 from Cthulhu-throwaway/wii-buildfix
Wii buildfix
2022-06-10 17:23:15 +01:00
Cthulhu-throwaway 349be66031 Wii buildfix 2022-06-10 13:00:59 -03:00
libretroadmin 9c34a83aa7 task_push_load_contentless_from_menu - prevent warning when
compiling without HAVE_DYNAMIC defined
2022-06-10 14:40:06 +02:00
LibretroAdmin 9fe100a3dd Merge pull request #14026 from Cthulhu-throwaway/vita-buildfix-1
Vita buildfix
2022-06-10 09:34:53 +01:00
Cthulhu-throwaway f46e41f6c4 Vita buildfix 2022-06-10 05:11:29 -03:00
LibretroAdmin 332074df40 Merge pull request #14001 from Cthulhu-throwaway/poll
(Network) poll support
2022-06-10 06:47:20 +01:00
github-actions b1351723f3 Fetch translations from Crowdin 2022-06-10 00:11:43 +00:00
github-actions b0ca2e381c Fetch translations from Crowdin 2022-06-09 00:11:30 +00:00
LibretroAdmin e8d5c0d4e1 Merge pull request #14022 from MrHuu/master
(3DS) Add CONSOLE_LOG guards
2022-06-08 08:45:38 +01:00
LibretroAdmin ea914e80e7 Merge pull request #14023 from sonninnos/vulkan-logging
(Vulkan) Show swapchain images logging again
2022-06-08 07:09:54 +01:00
sonninnos b630b98c60 (Vulkan) Show swapchain images logging again 2022-06-08 08:59:53 +03:00
github-actions 8d80071047 Fetch translations from Crowdin 2022-06-08 00:10:37 +00:00
LibretroAdmin 21a942665c Merge pull request #14008 from HyperspaceMadness/Shader_Load_Extra_Param_References
Shader Load Extra Parameter Reference Files
2022-06-08 00:52:14 +01:00
MrHuu 3a1d567ced (3DS) Add CONSOLE_LOG guards 2022-06-07 22:23:45 +02:00
libretroadmin 8ec1f3294e (D3D10/11/12) Miscellaneous corrections/safety checks 2022-06-07 06:37:23 +02:00
libretroadmin 65ab04e775 (D3D11/D3D12) Prevent Griffin build failure 2022-06-07 04:30:28 +02:00
LibretroAdmin 491cf7f2b4 Merge pull request #14010 from sonninnos/x11-led-keyboard
(X11) Add LED keyboard driver
2022-06-07 02:39:20 +01:00
LibretroAdmin e51d3450cd Merge pull request #14009 from sonninnos/win32-led-keyboard
(WIN32) LED keyboard driver cleanup
2022-06-07 02:38:51 +01:00
github-actions 65f45b07c5 Fetch translations from Crowdin 2022-06-07 00:10:18 +00:00
LibretroAdmin 2b182bfc4a Merge pull request #14019 from sonninnos/d3d11-waitable-swapchain
(D3D11/12) Add waitable swapchains and max frame latency option
2022-06-07 01:00:45 +01:00
LibretroAdmin c06e18c4ed Merge pull request #14014 from QuarkTheAwesome/wiiu-sysconf
(WiiU) Implement sysconf and __clear_cache
2022-06-06 23:19:20 +01:00
sonninnos 0bb65fb39c (D3D11/12) Add waitable swapchains and max frame latency option 2022-06-07 00:25:03 +03:00
Ash Logan d6250fd58c (WiiU) Implement __clear_cache
This seems to maybe be a libgcc builtin and even explicit calls to it 
are removed.. so we have a Makefile workaround!
2022-06-07 01:07:01 +10:00
Ash Logan 148f5f7499 (WiiU) Implement sysconf()
_SC_PAGESIZE is used in some cores.
2022-06-07 01:02:53 +10:00
github-actions 65901cb133 Fetch translations from Crowdin 2022-06-06 00:10:28 +00:00
Tony Jansson a8cff31420 (X11) Add LED keyboard driver 2022-06-05 08:27:41 +03:00
sonninnos 38f258c504 (WIN32) LED keyboard driver cleanup 2022-06-05 08:26:49 +03:00
HyperspaceMadness 8d177ed865 Shader Load Extra Parameter Reference Files
When a shader preset is loaded now when there are more than one #reference line the parameter values will be loaded from the references after the first one
2022-06-04 20:12:21 -04:00
libretroadmin 8b5b1ce96d (D3D) Get rid of unnecesary inline functions 2022-06-04 23:14:15 +02:00
libretroadmin 85ca66bfad (D3D) Move d3d{}_release_texture out of d3d{}_init_texture 2022-06-04 21:31:43 +02:00
libretroadmin d0ce0ac06f (D3D12) Fix regression 2022-06-04 21:28:00 +02:00
libretroadmin 4dc08fad5c (D3D) Miscellaneous cleanups 2022-06-04 19:16:14 +02:00
LibretroAdmin 4226a8311e Merge pull request #14006 from MrHuu/ctr_compile_flags
(3DS) Support latest libctru
2022-06-04 17:14:00 +01:00
Cthulhu-throwaway d4324d9a0d (Network) poll support 2022-06-04 10:46:31 -03:00
MrHuu a4c40da647 (3DS) Support latest libctru
- Fixes compilations warnings dus to FLAG changes
2022-06-04 14:27:55 +02:00
libretroadmin c0c1198d35 (GCC12) Get rid of warning: the comparison will always evaluate as 'true' for the pointer operand in 'filt->thread_data + (sizetype)((long long unsigned int)i * 48)' must not be NULL [-Waddress] 2022-06-04 10:04:59 +02:00
libretroadmin 85cd386cb3 (Input) Cleanups 2022-06-04 08:55:35 +02:00
libretroadmin c9149895f5 (GCC12) Get rid of warning: the comparison will always evaluate as 'true' for the pointer operand in 'binds + (sizetype)((long long unsigned int)port * 4032)' must not be NULL [-Waddress] 2022-06-04 08:50:35 +02:00
libretroadmin 0fbb36c61a (D3D12) Try to fix compilation for mingw toolchains with GCC 12.x
and beyond
2022-06-04 07:02:32 +02:00
libretroadmin 18bebe0c73 (D3D12) Small cleanups - less implicit memsets 2022-06-04 06:55:34 +02:00
libretroadmin 2a747ada5d (GCC 12) Silence some new warnings generated 2022-06-04 06:35:05 +02:00
libretroadmin 05797eb6b8 (D3D12) Move functions over to files that need it 2022-06-04 06:02:50 +02:00
libretroadmin 92a7d5bf61 (D3D12) Get rid of some unused inline functions 2022-06-04 02:51:59 +02:00
libretroadmin 281fe83936 (D3D12) Remove unused inline functions 2022-06-04 00:20:47 +02:00
libretroadmin cb56b35568 (D3D12) Won't work on older mingw versions too, roll this back 2022-06-03 23:22:40 +02:00
libretroadmin c0a7739f85 (D3D12) Try alternative approach in hopes it will still work on older mingw versions 2022-06-03 23:12:11 +02:00
libretroadmin 92a1dac0ea (D3D12) Fix newer mingw versions 2022-06-03 23:04:58 +02:00
LibretroAdmin 9ea46f34fb Merge pull request #13997 from Cthulhu-throwaway/lan-discovery-ipv4-tunneling
(Netplay/LAN Discovery) Support for IPv4 tunneling (6to4)
2022-06-02 08:43:24 +01:00
LibretroAdmin 9fbf1c846f Merge pull request #13998 from sonninnos/win32-fs-log
(WIN32) Fix video resolution logging
2022-06-01 16:59:43 +01:00
sonninnos 5bf82038ad (WIN32) Fix video resolution logging 2022-06-01 18:45:33 +03:00
Cthulhu-throwaway bcc31be6da (Netplay/LAN Discovery) Support for IPv4 tunneling (6to4) 2022-06-01 06:34:43 -03:00
LibretroAdmin a92a37e3f4 Merge pull request #13996 from Cthulhu-throwaway/netplay-cleanup-2
(Netplay) Some cleaning
2022-06-01 10:00:09 +01:00
Cthulhu-throwaway 9fab981317 (Netplay) Some cleaning 2022-06-01 04:31:33 -03:00
LibretroAdmin 4a21553f06 Merge pull request #13994 from fr500/master
fix previous PR
2022-06-01 07:37:37 +01:00
LibretroAdmin 6755eac963 Merge pull request #13995 from Cthulhu-throwaway/natt-fix
(UPnP) Fix for zero-length datagrams
2022-06-01 07:37:28 +01:00
Cthulhu-throwaway 2abf42515b (UPnP) Fix for zero-length datagrams 2022-06-01 03:24:46 -03:00
radius 109cd28a6f fix previous PR 2022-06-01 01:00:28 -05:00
LibretroAdmin b4dc4f3cc9 Merge pull request #13993 from fr500/patch-2
Fix lan rooms on android
2022-06-01 05:14:39 +01:00
libretroadmin 63d1ef4677 (Wayland) Prevent implicit declarations 2022-06-01 05:43:28 +02:00
libretroadmin e33f6cbbe2 Don't define _GNU_SOURCE when already defined 2022-06-01 05:39:28 +02:00
Andrés cf2ecf506c Fix lan rooms on android
This simple change makes lan discovery work on android again.
The is_lan_address function was meant to filter out duplicate rooms only anyway and this change shouldn't harm anything

The responses on android are seen as IPv6 mapped IPv4 addresses so this is needed for this to work anyway

I/RetroArch: [Discovery] Responnse received on LAN interface ::ffff:192.168.1.241.
I/RetroArch: [Netplay]: Connecting to ::ffff:192.168.1.241|55435 (deferred)
2022-05-31 22:39:10 -05:00
libretroadmin b0597d91a2 Try to define F_ADD_SEALS and F_SEAL_SHRINK when not defined 2022-06-01 05:37:45 +02:00
libretroadmin b8d9070c9b (DXGI/HDR) Move global to only function that requires it 2022-05-31 21:03:38 +02:00
libretroadmin 06d62cf86a Simplify vulkan set_resize function callbacks 2022-05-31 20:18:27 +02:00
libretroadmin bf7b1c9d9c (Wayland) Fixups 2022-05-31 20:04:33 +02:00
libretroadmin ccdf68e64a (Wayland) Buildfix 2022-05-31 19:51:41 +02:00
libretroadmin 6408cc8958 Make memfd_create call more backwards compatible by calling it through
syscall -
On older systems, you'll have to include linux/memfd.h for the MFD_ defines, and call memfd_create() via the the syscall(2) wrapper (and include unistd.h and sys/syscall.h for it work). We exclude linux/memfd.h header include because we already provide
the MFD_ defines in case they are missing
2022-05-31 19:45:55 +02:00
libretroadmin 5b85d46383 (Vulkan) Get rid of g_win32_inited = true line - this is already done
in create_vk_context
2022-05-31 19:14:12 +02:00
LibretroAdmin e470461b14 Merge pull request #13991 from Cthulhu-throwaway/isinprogress
(Networking) Define isinprogress function
2022-05-31 17:07:17 +01:00
Cthulhu-throwaway 39de84eb05 Wii buildfix 2022-05-31 06:07:57 -03:00
Cthulhu-throwaway 8f7b5a1050 (Networking) Define isinprogress function 2022-05-31 05:07:23 -03:00
LibretroAdmin cb6b41e10f Merge pull request #13990 from Cthulhu-throwaway/netplay-cleanup
Proper buildfix for some Windows environments
2022-05-31 05:13:04 +01:00
Cthulhu-throwaway 400faff5ba Proper buildfix for some Windows environments 2022-05-31 01:08:45 -03:00
libretroadmin 4811f8d3f6 Revert "Attempted buildfix for net_socket"
This reverts commit 17d31e6dff.
2022-05-31 06:06:43 +02:00
libretroadmin 17d31e6dff Attempted buildfix for net_socket 2022-05-31 05:43:50 +02:00
LibretroAdmin 4c3482faab Merge pull request #13989 from Cthulhu-throwaway/netplay-cleanup
(Netplay) Some cleaning
2022-05-31 04:33:12 +01:00
Cthulhu-throwaway 17b7b1322e (Netplay) Some cleaning 2022-05-30 22:02:24 -03:00
github-actions 037ae4b87d Fetch translations from Crowdin 2022-05-31 00:11:36 +00:00
LibretroAdmin 5e258eb8f0 Merge pull request #13987 from Cthulhu-throwaway/master
(Netplay) Enforce a timeout during connection
2022-05-30 18:14:12 +01:00
Cthulhu-throwaway de30f212bc (Netplay) Enforce a timeout during connection 2022-05-30 05:23:39 -03:00
LibretroAdmin 4e82b40515 Merge pull request #13986 from QuarkTheAwesome/wiiu-mmap-imports
(WiiU) Add OS memory mapping imports
2022-05-30 03:44:06 +01:00
Ash Logan 7c34fd46e1 (WiiU) Add OS memory mapping imports
Used in some upcoming cores.
2022-05-30 11:50:58 +10:00
LibretroAdmin 56feacf3b6 Merge pull request #13985 from libretro/revert-13959-Shader_Loading_Multiple_References
Revert "Shader Preset Loading of Multiple additional #references lines for settings"
2022-05-30 01:39:59 +01:00
LibretroAdmin 6ba8fe225d Revert "Shader Preset Loading of Multiple additional #references lines for settings" 2022-05-30 02:39:25 +02:00
github-actions c6bd7d8b8a Fetch translations from Crowdin 2022-05-30 00:14:02 +00:00
libretroadmin 96a485f885 Move struct and macros for input to input_types.h 2022-05-29 21:58:39 +02:00
LibretroAdmin ccdda219b8 Merge pull request #13980 from Ophidon/master
Fix BFI Regression
2022-05-29 08:58:39 +01:00
Ophidon 4c934e66d5 Fix BFI Regression 2022-05-29 00:51:28 -04:00
LibretroAdmin 4e5cc3fef1 Merge pull request #13979 from phcoder/dostime
djgpp: Add a workaround for libc bug
2022-05-29 05:32:50 +01:00
github-actions adc6ac1429 Fetch translations from Crowdin 2022-05-29 00:13:19 +00:00
Vladimir Serbinenko 46e86ff503 djgpp: Add a workaround for libc bug 2022-05-28 22:24:36 +02:00
github-actions 3b27f7730c Fetch translations from Crowdin 2022-05-28 00:11:31 +00:00
LibretroAdmin b65c933a09 Merge pull request #13975 from Cthulhu-throwaway/netplay-cleanup
(Netplay) Some refactoring and cleaning
2022-05-27 23:37:43 +01:00
LibretroAdmin 98a13f386f Merge pull request #13974 from DisasterMo/source-text-fixes
Fix some grammar & spelling mistakes
2022-05-27 22:24:17 +01:00
Cthulhu-throwaway e4f8b531d5 (Netplay) Some refactoring and cleaning 2022-05-27 17:21:34 -03:00
DisasterMo 51e0515f44 Fix some grammar mistakes 2022-05-27 20:31:52 +02:00
LibretroAdmin 16c0f5e223 Merge pull request #13964 from 5th-fork/master
[UWP] add support for 4k to angle on xbox
2022-05-27 15:10:33 +01:00
LibretroAdmin 3f6d8508a4 Merge pull request #13971 from stevenjamescox/master
revision to macOS app icon set
2022-05-26 17:54:03 +01:00
Steve Cox 134f645e72 revision to macOS app icon set 2022-05-25 20:04:48 -07:00
LibretroAdmin 37a17df182 Merge pull request #13970 from Cthulhu-throwaway/upnp-fix
(Netplay/UPnP) Stability Issue
2022-05-25 17:45:27 +01:00
Cthulhu-throwaway 61610bd7d3 (Netplay/UPnP) Stability Issue 2022-05-25 12:30:17 -03:00
LibretroAdmin cc1325ff82 Merge pull request #13959 from HyperspaceMadness/Shader_Loading_Multiple_References
Shader Preset Loading of Multiple additional #references lines for settings
2022-05-25 14:49:01 +01:00
LibretroAdmin 24b6a0ae7d Merge pull request #13968 from Cthulhu-throwaway/master
(Netplay) Change default for input sharing to "no sharing"
2022-05-25 14:48:37 +01:00
Cthulhu-throwaway ade5444d5f (Netplay) Change default for input sharing to "no sharing" 2022-05-25 07:45:02 -03:00
github-actions af7db7c08f Fetch translations from Crowdin 2022-05-25 00:13:38 +00:00
Remi McGill 684889507b Shader Loading of Multiple References for settings
Multi reference settings working

Config fixes

Multi-Reference Loading Working, Checking for shader chain not working

Checking References is working

Improved path_linked_list_add_path

Simplify path list stuff

Fixed Static Definition

Fixes

Fixes

Fix to Trigger PR Update

Removed Legacy Orbis which got left in a merge

Memory Leak Fix
2022-05-24 14:07:55 -04:00
LibretroAdmin 8f1de8a343 Merge pull request #13965 from stevenjamescox/master
Revised tvOS icons w/ updated invader.
2022-05-24 12:50:52 +01:00
github-actions d4795b8cf6 Fetch translations from Crowdin 2022-05-24 00:12:09 +00:00
Steve Cox d54df6f18e Revised tvOS icons w/ updated alien. 2022-05-23 15:58:48 -07:00
tunip3 accbfb3a96 update angle readme 2022-05-23 23:30:55 +01:00
tunip3 d5f5f8e202 update libs 2022-05-23 23:29:17 +01:00
tunip3 6994ff3ab7 add display res matching 2022-05-23 22:55:41 +01:00
tunip3 6c6d16e978 Update gl2.c 2022-05-23 22:54:29 +01:00
LibretroAdmin 49370f1f26 Merge pull request #13961 from libretro/orbisdev-orbis
WIP: Orbis/PS4 Support using OrbisDev toolchain (pt. 2)
2022-05-23 22:00:08 +01:00
LibretroAdmin c92da21647 Merge pull request #13954 from Apaczer/upscale240x160_mix
Add Upscale_240x160-320x240 video filter with 'mixed' method
2022-05-23 20:46:40 +01:00
Apaczer 8722f83dee change function's alias
fixes PSP build
2022-05-23 20:40:31 +02:00
LibretroAdmin 4a985b0765 Merge pull request #13963 from davidgfnet/test-fixes
Fix string test that fails.
2022-05-23 18:48:28 +01:00
David Guillen Fandos 8b53aaf45f Fix string test that fails. 2022-05-23 18:47:29 +02:00
libretroadmin 14c0948fb9 (video_thread_wrapper.c) Put back logs at request 2022-05-23 13:43:54 +02:00
LibretroAdmin f3a4a87eae Merge pull request #13962 from stevenjamescox/master
iOS app icon fixes & revisions
2022-05-23 12:44:17 +01:00
Steve Cox 0e486f9468 iOS app icon fixes & revisions
Replaced many blurry app icons, instead using icons from higher resolution sources.

Revised iOS app icon color & spacing slightly, attempting to match the pattern used in the recent Android and Switch versions of RetroArch.
2022-05-23 02:36:23 -07:00
github-actions 7b95f3e2ea Fetch translations from Crowdin 2022-05-23 00:12:07 +00:00
libretroadmin 802b3ecd05 (Drivers shader) Revert back to earlier version 2022-05-22 20:49:45 +02:00
libretroadmin 9590fdd0d4 Cleanups pt.2 2022-05-22 20:29:53 +02:00
libretroadmin 41d225f937 Cleanup 2022-05-22 20:14:56 +02:00
libretroadmin a14ccc2d4d (Orbis) Remove some logs 2022-05-22 19:59:20 +02:00
libretroadmin 13c746f703 Merge branch 'orbis' of https://github.com/orbisdev/RetroArch into orbisdev-orbis 2022-05-22 19:51:41 +02:00
LibretroAdmin 08e3cd07ef Update README.md 2022-05-22 19:38:10 +02:00
github-actions 4654fc1b75 Fetch translations from Crowdin 2022-05-22 00:11:22 +00:00
LibretroAdmin e4f3a781a6 Update README.md 2022-05-21 23:53:09 +02:00
LibretroAdmin d45dbe1e66 Update README.md 2022-05-21 23:52:33 +02:00
LibretroAdmin e65679da09 Update README.md 2022-05-21 23:40:56 +02:00
LibretroAdmin 3a6956f429 Update README.md 2022-05-21 23:40:28 +02:00
libretroadmin 5c6d5b0aa3 (thread_wrapper) Logging is not thread-safe, remove log messages 2022-05-21 20:31:38 +02:00
libretroadmin cc61c90602 (Vulkan shader) Add framebuffer copy/clear to inner functions - remove
functions
2022-05-21 18:49:21 +02:00
libretroadmin 68608e5db1 (shader_vulkan) Cleanups:
* Properly namespace functions
* Get rid of functions that were never used
* More cleanups in general
2022-05-21 17:55:43 +02:00
Francisco Javier Trujillo Mata ba47d09c4b [ORBIS] Update xxHash dependecy 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata f56f28d226 [ORBIS] Update to latest toolchain changes 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata 5ef1309742 [ORBIS] Adding CPP libs 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata 0c3506fbdc [ORBIS] Use orbis as suffix for core 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata 91758569b2 [ORBIS] Include crt0 in the makefile 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata 05a03164bd [ORBIS] Use user_mem_sys library 2022-05-21 17:10:36 +02:00
Francisco José García García 8f81692b78 [ORBIS] shader cache 2022-05-21 17:10:36 +02:00
Francisco Javier Trujillo Mata a5a90a1dc7 [ORBIS] Clean Makefile and show memory available and used 2022-05-21 17:10:35 +02:00
Francisco Javier Trujillo Mata 6974dee535 [ORBIS] Remove the dummy core option by default 2022-05-21 17:10:35 +02:00
Francisco Javier Trujillo Mata 6366fcf8e3 [ORBIS] Remove legacy implementation and compile with Werror 2022-05-21 17:10:35 +02:00
libretroadmin f30cbaf7a3 (shader_vulkan) More rewrites 2022-05-21 17:00:43 +02:00
Francisco Javier Trujillo Mata 50d8982943 [ORBIS] Add CI to GitHub Actions 2022-05-21 16:31:10 +02:00
Antonio Jose Ramos Marquez 9dd060dbc8 [ORBIS] some changes for input 2022-05-21 16:31:10 +02:00
Francisco Javier Trujillo Mata 7a15f81b39 [ORBIS] Improve memory reservation 2022-05-21 16:31:10 +02:00
Antonio Jose Ramos Marquez 4dd779467d [ORBIS] add debugnet support 2022-05-21 16:31:10 +02:00
OsirizX c6d51fdb32 [ORBIS] Initial changes for PS4 2022-05-21 16:31:10 +02:00
libretroadmin 46603db2fa (shader_vulkan) Get rid of Pass:set_pass_info 2022-05-21 14:49:31 +02:00
libretroadmin 302169b49a (shader_vulkan) Cleanups 2022-05-21 14:37:07 +02:00
libretroadmin 28bfa238d4 (RGUI) Buildfix 2022-05-21 13:54:37 +02:00
libretroadmin c48209d323 (shader_vulkan) More cleanups 2022-05-21 13:08:13 +02:00
LibretroAdmin 7164598a29 Merge pull request #13956 from GABO1423/patch-1
(Ozone) UWP Build fix.
2022-05-21 11:04:14 +01:00
LibretroAdmin 44288455cb Merge pull request #13957 from Cthulhu-throwaway/more-threaded-video-fixes
(Threaded Video) FIxes
2022-05-21 10:54:21 +01:00
libretroadmin 49954569f9 (shader_vulkan) Simplifications 2022-05-21 11:47:08 +02:00
Cthulhu-throwaway 68d864e01b (Threaded Video) FIxes 2022-05-21 06:23:17 -03:00
Gabriel Morazán 9a0f59677b (Ozone) UWP Build fix. 2022-05-20 22:10:27 -04:00
github-actions 4ee841b5e1 Fetch translations from Crowdin 2022-05-21 00:10:21 +00:00
libretroadmin 66a2a12766 (Vulkan) Move functions to proper place where they're used
and turn them static
2022-05-21 01:40:23 +02:00
LibretroAdmin 4966d2a130 Merge pull request #13952 from stevenjamescox/master
tvOS app icon fix & revisions
2022-05-21 00:18:24 +01:00
libretroadmin 3b99b42812 (shader_vulkan) Simplify - move functions over that were exclusively
used in shader_vulkan.cpp from vulkan_common.c to there
2022-05-21 01:11:28 +02:00
libretroadmin 25c33a8306 (drivers_shader) Simplify shader_gl3/shader_vulkan 2022-05-21 00:43:52 +02:00
libretroadmin 3d010cd7a9 (XMB) Cleanups 2022-05-20 22:40:36 +02:00
libretroadmin 63157a6f09 (RGUI) Cleanups 2022-05-20 21:28:15 +02:00
Apaczer 455dbb6dd0 add upscale240x160 mixed method 2022-05-20 20:46:00 +02:00
libretroadmin f879a723c6 (MaterialUI) Cleanups 2022-05-20 20:41:46 +02:00
libretroadmin 69d251ff6d (Menu) Cleanups for drivers 2022-05-20 20:31:06 +02:00
libretroadmin d9948c00e1 (Ozone) Cleanups 2022-05-20 19:50:33 +02:00
libretroadmin 05eca53290 (RGUI) Cleanups 2022-05-20 19:20:59 +02:00
libretroadmin 93e0baf715 (RGUI/MaterialUI) Cleanups 2022-05-20 16:10:15 +02:00
libretroadmin 14ab2db692 (Ozone) Cleanups 2022-05-20 14:46:45 +02:00
libretroadmin 07d19dd807 (XMB) Cleanups 2022-05-20 14:13:45 +02:00
libretroadmin e1db81787d (video_thread_wrapper) Small variable cleanup 2022-05-20 13:45:38 +02:00
LibretroAdmin adf3929f78 Merge pull request #13938 from Cthulhu-throwaway/threaded-video-cleanup
(Threaded Video/video_thread_wrapper.c) Cleaning and optimization
2022-05-20 12:44:56 +01:00
Steve Cox fbcc99013e tvOS app icon fix, also icon revisions
Fixed the @2x icon sizing. Each @2x icon was previously the same size as its @1x counterpart, resulting in odd graphical errors when the icon was selected on the tvOS home screen.

Switched to the non-outlined RetroArch logo to match the iOS app icon—and because I was unable to find a high enough resolution version of the outlined logo to properly create @2x icon layers for it.

Separated the icon layers further, going from two layers to three (eyes on their own layer now) to improve the resultant tvOS home screen parallax effect on it. The eyes now move ever so slightly—independent of the body.
2022-05-20 02:10:44 -07:00
libretroadmin 41f45becdb (D3D12) Buildfix 2022-05-20 04:41:43 +02:00
libretroadmin 7c2d033b83 (DXGI) Untangle macros 2022-05-20 00:21:57 +02:00
libretroadmin 937ad8bfc6 (D3D9) Cleanups 2022-05-19 22:32:03 +02:00
LibretroAdmin ae7cc2ef4d Merge pull request #13947 from jdgleaver/ozone-xmb-minimise-thumb-requests
(Ozone/XMB) Prevent unnecessary thumbnail requests when scrolling through playlists
2022-05-19 18:08:30 +01:00
jdgleaver f2dca12a22 (Ozone/XMB) Prevent unnecessary thumbnail requests when scrolling through playlists 2022-05-19 16:42:01 +01:00
libretroadmin 30685c6e60 (d3dcompiler_common) Cleanups 2022-05-19 16:18:34 +02:00
libretroadmin af89df2b82 (Vulkan) Some C89_BUILD fixes 2022-05-19 15:47:45 +02:00
libretroadmin 493b8fdef8 (Vulkan) Style nits/cleanups 2022-05-19 15:43:51 +02:00
libretroadmin eaabfefcb0 (Vulkan) Cleanups 2022-05-19 15:28:26 +02:00
libretroadmin a378ce0aec (Vulkan) Buildfix 2022-05-19 13:40:37 +02:00
LibretroAdmin a227989fd8 Merge pull request #13945 from Cthulhu-throwaway/move-natt
(Network) Move natt files to "network"
2022-05-19 12:41:45 +01:00
Cthulhu-throwaway f0baf977fa (Network) Move natt files to "network" 2022-05-18 23:23:40 -03:00
github-actions 011e371e42 Fetch translations from Crowdin 2022-05-19 00:13:17 +00:00
libretroadmin 7a55686a95 (Vulkan) Fix XMB regression 2022-05-18 23:29:04 +02:00
Cthulhu-throwaway 9e39abcd00 (Threaded Video/video_thread_wrapper.c) Cleaning and optimization 2022-05-18 18:27:54 -03:00
libretroadmin 241d6eb901 (Vulkan) Simplify vulkan_create_texture 2022-05-18 23:19:58 +02:00
libretroadmin 8881020b75 (vulkan_common.c) Cleanups 2022-05-18 21:00:42 +02:00
LibretroAdmin 7bf4515cd2 Merge pull request #13943 from Tatsuya79/patch-2
QT: add recent new options in video settings
2022-05-18 15:55:53 +01:00
libretroadmin 6f156d064e (Vulkan) vulkan_transition_texture - get rid of early return 2022-05-18 16:48:23 +02:00
libretroadmin 3cad090b4c (Vulkan) Optimizations/cleanups -
* Honor SUBOPTIMAL on non-Android since you'd want to recreate
swapchains then. On Android it can be promoted to SUCCESS.
SUBOPTIMAL_KHR can happen there when rotation (pre-rotate) is wrong.
* Small cleanups in general - less conditionals
2022-05-18 16:39:54 +02:00
Tatsuya79 581ebcc0ac QT: add recent new options in video settings 2022-05-18 16:35:00 +02:00
github-actions 650101083d Fetch translations from Crowdin 2022-05-18 00:11:52 +00:00
libretroadmin c527bce8e3 (D3D) Cleanups 2022-05-17 23:28:18 +02:00
libretroadmin 5a5c65d9b9 (D3D10) Remove inline functions 2022-05-17 23:13:33 +02:00
LibretroAdmin b3632586f5 Merge pull request #13902 from Ryunam/autorr-toggle
Add option to manually enable/disable automatic refresh rate switching
2022-05-17 21:39:07 +01:00
libretroadmin 255522f9a0 (D3D10) Get rid of lots of inline functions 2022-05-17 18:39:22 +02:00
libretroadmin fe37647c84 (D3D11) d3d11_init_shader - simplify some code 2022-05-17 17:26:13 +02:00
libretroadmin de4bfa0805 (D3D11) Get rid of some inlined functions 2022-05-17 17:04:43 +02:00
libretroadmin 7eb9f6b49b (D3D8) Set suppress_screensaver depending on preprocessor define 2022-05-17 14:22:51 +02:00
libretroadmin efe6d14d37 Get rid of d3d9_suppress_screensaver in d3d9_common.c 2022-05-17 14:21:22 +02:00
libretroadmin a396cd872c (GL2 Raster font) Prefix gl_raster_font with gl2_ 2022-05-17 14:16:53 +02:00
libretroadmin 87b76dc7a4 (video_shader_parse.c) Cleanups 2022-05-17 14:12:02 +02:00
libretroadmin 49bf60cc90 (Win32) Cleanups 2022-05-17 13:21:56 +02:00
libretroadmin 7896341dfc Revert "Move d3d_input_driver to win32_common and rename it win32_input_driver"
This reverts commit 201eeae7f1.
2022-05-17 12:34:12 +02:00
github-actions be567da82b Fetch translations from Crowdin 2022-05-17 00:13:01 +00:00
libretroadmin cdcc8fe992 (D3D11) Fix regression with XMB pipeline shaders 2022-05-17 00:50:07 +02:00
libretroadmin 0a5eff8468 (Metal raster font) Buildfix 2022-05-16 22:48:33 +02:00
libretroadmin 3115338849 (D3D10/D3D11/Vulkan) Cleanups 2022-05-16 22:26:46 +02:00
libretroadmin bfa627737e (D3D/Vulkan) Try to prevent implicit memsets 2022-05-16 21:37:02 +02:00
libretroadmin c8e3ae09e7 Font driver cleanups #2 2022-05-16 20:34:46 +02:00
libretroadmin ee0749e884 (Font drivers) Font driver cleanups 2022-05-16 19:41:00 +02:00
libretroadmin 93dfa0217d (D3D10/D3D11/D3D12) Simplify font drivers 2022-05-16 18:00:55 +02:00
Ryunam d7cfcd3f9b Add option to toggle automatic refresh rate switching 2022-05-16 17:50:11 +02:00
libretroadmin 1c1d37e959 (D3D8) Simplifications 2022-05-16 14:19:17 +02:00
libretroadmin 3b7ff9d69b (D3D9) Simplify d3d9_reset 2022-05-16 13:34:32 +02:00
libretroadmin 0df2be001e (D3D9) Only d3d9_renderchain_add_lut requires create_texture_from_file now,
so split up into two separate functions - this function requires D3DX
which we intend to get rid of long-term
2022-05-16 13:24:58 +02:00
libretroadmin 372ac81ee1 (D3D8) d3d8_texture_new - path never used, so get rid of it and get
rid of D3DX remnants for D3D8
2022-05-16 13:19:40 +02:00
LibretroAdmin 9dd03f6d9f Merge pull request #13835 from sonninnos/quickmenu-reorder
Reorganize Quick Menu items
2022-05-16 12:06:19 +01:00
libretroadmin df5f5cd9a4 (D3D9) Cut down on ifdefs 2022-05-16 13:00:24 +02:00
LibretroAdmin f4964c1937 Merge pull request #13936 from Cthulhu-throwaway/kick-submenu-ext
(Netplay) Chat supported info for the host kick submenu
2022-05-16 11:41:52 +01:00
libretroadmin 88d0a4ac75 (D3D9 HLSL) Simplifications 2022-05-16 12:01:23 +02:00
libretroadmin 5ffd95aa1b (D3D9) Simplify d3d9_vertex_buffer_new 2022-05-16 11:33:15 +02:00
libretroadmin 201eeae7f1 Move d3d_input_driver to win32_common and rename it win32_input_driver 2022-05-16 08:03:13 +02:00
libretroadmin 275e58c6ce Cleanup D3D8/D3D9 matrix functions 2022-05-16 07:55:39 +02:00
libretroadmin e061e7028b Revert "(D3D) Start cutting down on d3d_matrix_identity"
This reverts commit d6e6fb2a93.
2022-05-16 07:46:21 +02:00
libretroadmin d6e6fb2a93 (D3D) Start cutting down on d3d_matrix_identity 2022-05-16 07:37:24 +02:00
libretroadmin 23f1f98c01 (D3D8) Cleanups - remove unused code 2022-05-16 07:32:36 +02:00
github-actions ab858c65a1 Fetch translations from Crowdin 2022-05-16 00:13:33 +00:00
Cthulhu-throwaway 82c9773e0d (Netplay) Chat supported info for the host kick submenu 2022-05-15 19:38:44 -03:00
libretroadmin 52bb930cc7 (D3D9) Cleanup 2022-05-15 21:04:53 +02:00
libretroadmin febd584930 (D3D9) Cleanups - cut down on pointless inlined functions 2022-05-15 17:20:54 +02:00
libretroadmin 28cd77c5b4 (D3D9) Cleanups 2022-05-15 16:28:18 +02:00
LibretroAdmin 720cca5e45 Merge pull request #13935 from Cthulhu-throwaway/kick-submenu
(Netplay) Host Kick Submenu
2022-05-15 08:35:01 +01:00
Cthulhu-throwaway 81593fda42 (Netplay) Host Kick Submenu
Path: Netplay -> Host -> Kick Client

- Allows the host to kick clients.
- Allows the host to view client information: connected clients (names), status (playing/spectating) and ping.
2022-05-15 04:04:15 -03:00
libretroadmin 2ca4d8bd7b (D3D8) Cleanups 2022-05-15 08:15:35 +02:00
libretroadmin c2ae445a85 (D3D8) More buildfixes 2022-05-15 07:25:12 +02:00
libretroadmin 77fd75dd06 (D3D8) More buildfixes 2022-05-15 06:11:58 +02:00
libretroadmin 0676db9096 (D3D8) More buildfixes 2022-05-15 06:01:44 +02:00
libretroadmin a496bfa57b (D3D8) Buildfixes 2022-05-15 05:53:04 +02:00
libretroadmin 7934e677ca Get rid of inline functions in d3d8_common.h - simplify code 2022-05-15 05:48:09 +02:00
LibretroAdmin 927982e0d6 Merge pull request #13934 from Cthulhu-throwaway/master
(Netplay) Free client_info when it's no longer in use
2022-05-15 03:11:28 +01:00
github-actions 08e69fbd08 Fetch translations from Crowdin 2022-05-15 00:14:24 +00:00
Cthulhu-throwaway cb2d6b3d8e (Netplay) Free client_info when it's no longer in use 2022-05-14 12:06:57 -03:00
twinaphex a577d7d224 (netplay_frontend) Small style nits/cleanups 2022-05-14 04:34:11 +02:00
LibretroAdmin b934b41758 Merge pull request #13932 from Cthulhu-throwaway/master
(Netplay) Support for gathering client info and kicking
2022-05-14 03:33:45 +01:00
Cthulhu-throwaway 6d96df0e49 (Netplay) Support for gathering client info and kicking
Client info and kicking (by the host) is now implemented through netplay_driver_ctl and can be used by future features.
2022-05-13 22:42:08 -03:00
github-actions c88e03df06 Fetch translations from Crowdin 2022-05-14 00:13:18 +00:00
LibretroAdmin e9914d6605 Merge pull request #13931 from Cthulhu-throwaway/master
(Netplay) More cleaning and organization
2022-05-13 14:28:57 +01:00
Cthulhu-throwaway f29256bb0d (Netplay) More cleaning and organization 2022-05-13 10:22:55 -03:00
LibretroAdmin dc0054a747 Merge pull request #13927 from jdgleaver/auto-video-swap-interval
Enable automatic configuration of 'VSync Swap Interval'
2022-05-13 14:17:56 +01:00
github-actions 143655eec6 Fetch translations from Crowdin 2022-05-13 00:13:09 +00:00
LibretroAdmin 533d746f64 Merge pull request #13649 from phcoder/ctrl
Add a configurable workaround for Android reconnecting devices
2022-05-12 20:56:58 +02:00
LibretroAdmin 9919aac510 Merge pull request #13929 from Cthulhu-throwaway/master
(Netplay) Fixes and cleanup
2022-05-12 20:47:46 +02:00
Cthulhu-throwaway 99e517d2a9 (Netplay) Fixes and cleanup
(Netplay) Buildfix and warnings
2022-05-12 14:26:53 -03:00
jdgleaver 801b16885e Enable automatic configuration of 'VSync Swap Interval' 2022-05-12 14:22:46 +01:00
twinaphex 6099428ab7 (Windows) Fix exclusive fullscreen video refresh rate when vsync swap interval is not equal to one -
Refresh rate in exclusive fullscreen mode was being incorrectly multiplied by vsync swap interval, breaking swap interval functionality at the gfx driver level
2022-05-12 15:05:02 +02:00
LibretroAdmin 1b8c1faa8a Merge pull request #13921 from nfp0/menu-increase-shader-scale-max-value
menu - Increase shader scale max value
2022-05-12 00:54:33 +02:00
LibretroAdmin f57e46ceb5 Merge pull request #13917 from phcoder/retrofw2
Support battery indicator on RetroFW
2022-05-12 00:54:20 +02:00
tunip3 fc16da3440 remove copy perms as its inefficient as we can just directly assign the new acl and that works (#13926) 2022-05-11 19:16:04 +02:00
github-actions 51c558c8f4 Fetch translations from Crowdin 2022-05-11 00:10:58 +00:00
Cthulhu-throwaway 796bc15837 C89 buildfix (#13923)
* C89 buildfix

* More buildfixes
2022-05-10 07:37:33 +02:00
github-actions af224493b3 Fetch translations from Crowdin 2022-05-10 00:10:43 +00:00
nfp0 0e44673053 menu - Increase shader scale max value 2022-05-09 16:54:26 +01:00
github-actions 1982c82dcd Fetch translations from Crowdin 2022-05-09 00:11:05 +00:00
Cthulhu-throwaway 80a9c16b3f (Netplay/Lobby) Add a toggleable filter for passworded rooms (#13920)
In addition, move lobby filters into its own submenu for better organization.
2022-05-08 04:24:58 +02:00
github-actions 2a15a4cba3 Fetch translations from Crowdin 2022-05-08 00:12:15 +00:00
github-actions 8475bcbab3 Fetch translations from Crowdin 2022-05-07 00:10:07 +00:00
Autechre d2e7674e3e Update .gitlab-ci.yml 2022-05-07 01:21:02 +02:00
Vladimir Serbinenko 25a8e05597 Support battery indicator on RetroFW 2022-05-07 00:53:02 +02:00
Cthulhu-throwaway b57a1b0c72 (Netplay) Fix possible deadlock (#13919) 2022-05-07 00:40:46 +02:00
twinaphex c3c7f5167f Buildfix 2022-05-06 22:31:42 +02:00
tunip3 ba2203e1e4 fix uwp debug build (#13918)
* fix uwp debug build
2022-05-06 21:49:21 +02:00
Cthulhu-throwaway 9a3b8f4a0a (Netplay) Disable netplay for unsupported cores (#13916)
With stateless mode being disabled for now, there is no reason not to include this.

Refuse to initialize netplay when the current core is not supported (no proper savestates support).
2022-05-06 04:31:37 +02:00
github-actions 5a85748de6 Fetch translations from Crowdin 2022-05-06 00:11:54 +00:00
jdgleaver dbcce3f564 Analog button mapping fixes (#13913) 2022-05-05 20:47:23 +02:00
Cthulhu-throwaway 0a52964015 (Netplay) Disable and hide stateless mode (#13915)
Stateless mode is nonfunctional at the moment, despite my attempts to get it working.
A significant amount of work is required to get it working.

For now, force-disable stateless mode and hide it from menus and the CLI's help text.
2022-05-05 20:46:48 +02:00
github-actions 19b7ff81b9 Fetch translations from Crowdin 2022-05-05 00:10:58 +00:00
Jamiras e3b59fd36d upgrade to rcheevos 10.4 (#13908) 2022-05-04 04:46:47 +02:00
github-actions 4804d7015a Fetch translations from Crowdin 2022-05-03 00:11:07 +00:00
Alexander Trufanov 55aceb5356 Allow mitm server selection on OK callback (#13906)
* Allow mitm server selection on OK callback
2022-05-02 19:44:53 +02:00
github-actions 102abb0223 Fetch translations from Crowdin 2022-05-02 00:11:05 +00:00
github-actions e51febaa7d Fetch translations from Crowdin 2022-05-01 00:14:28 +00:00
Cthulhu-throwaway 4674241bf9 (Networking) Move macro to its correct place (#13904) 2022-04-30 03:39:10 +02:00
github-actions 9cbdc783be Fetch translations from Crowdin 2022-04-30 00:11:26 +00:00
Cthulhu-throwaway 7c3dfa5e3a (Netplay/LAN Discovery) Ensure fixed width ints on packet struct (#13901) 2022-04-29 20:26:34 +02:00
Cthulhu-throwaway 7a70b36c8b (Threaded Tasks) Fix race condition at task_queue_wait (#13898) 2022-04-29 14:29:07 +02:00
twinaphex 984f857621 (D3D11) Fix overlay not showing up regression 2022-04-29 14:23:36 +02:00
github-actions 499ccad74e Fetch translations from Crowdin 2022-04-29 00:11:09 +00:00
sonninnos 0b55188969 Reorganize Quick Menu items 2022-04-28 18:57:46 +03:00
m4xw e389b8c7a1 Fix readability and precision issues in aspectratio_lut (#13893) 2022-04-28 15:30:13 +02:00
Cthulhu-throwaway a268ffe6ce (Netplay) Replace sscanf with safer strtol and strtoul (#13897) 2022-04-28 14:14:00 +02:00
github-actions 11234aad11 Fetch translations from Crowdin 2022-04-28 00:18:59 +00:00
jdgleaver 37c56d0d09 Add option to disable automatic saving of input remap files (#13894) 2022-04-27 19:12:53 +02:00
twinaphex 604335bc27 (D3D9) Simplifications to HLSL/Cg drivers 2022-04-27 19:07:04 +02:00
twinaphex 251208fd0b (D3D9 Cg)d3d9_cg_renderchain_add_lut function no longer used - remove 2022-04-27 18:47:44 +02:00
twinaphex 9463f0ee55 (D3D9 Cg) Buildfix 2022-04-27 18:04:24 +02:00
github-actions a923b62966 Fetch translations from Crowdin 2022-04-27 00:11:58 +00:00
twinaphex 84e49bd2d1 (D3D9) Simplify some code 2022-04-26 18:33:30 +02:00
jdgleaver c1d1e57ec9 Fix audio mixer memory leak + remove redundant 'single threaded' rthreads implementation (#13890) 2022-04-26 14:22:59 +02:00
Autechre 1493533345 Revert "ensure history list will contain crc32 (#13883)" (#13891)
This reverts commit 141bba0464.
2022-04-26 14:22:33 +02:00
Vladimir Serbinenko c2db12c727 Enable menu toggle button on retrofw devices (#13889) 2022-04-26 09:59:36 +02:00
github-actions 7489b5b078 Fetch translations from Crowdin 2022-04-26 00:11:44 +00:00
twinaphex 47a1f8f851 (D3D8/D3D9) Do not run unnecessary d3d_matrix_identity call before
d3d_matrix_rotation_z - rotation_z already sets identity matrix for
the matrix
2022-04-25 19:21:52 +02:00
twinaphex 3c3a305eb3 Add HAVE_GDI ifdef 2022-04-25 18:39:41 +02:00
Cthulhu-throwaway 1f879b0472 (Netplay/Content Find Task) Ensure CRC32 is 8 characters long (#13887)
Ensure CRC32 is 8 hexadecimal characters long when comparing CRCs with loaded content.
2022-04-25 18:36:59 +02:00
twinaphex 339a8736c1 (feralgamemode) Cleanups - get rid of fprintfs 2022-04-25 18:14:31 +02:00
Autechre f42591305d Revert "Fix crc32 comparision (#13884)" (#13886)
This reverts commit f377c0d041.
2022-04-25 18:06:04 +02:00
twinaphex 3d0f8c1ed5 (D3D9) Get rid of d3d9_set_stream_source inline function 2022-04-25 17:40:18 +02:00
twinaphex 609c56b7cd (D3D9) Cleanups 2022-04-25 17:06:11 +02:00
Vladimir Serbinenko eaf98919a9 Add missing locks in audio_mixer.c (#13858) 2022-04-25 16:54:10 +02:00
Alexander Trufanov 141bba0464 ensure history list will contain crc32 (#13883) 2022-04-25 15:53:23 +02:00
Alexander Trufanov f377c0d041 Fix crc32 comparision (#13884)
As state->content_crc has "|crc" suffix.
2022-04-25 15:40:25 +02:00
twinaphex 2864f70bd9 (D3D12) Cleanups 2022-04-24 23:33:08 +02:00
twinaphex 589548337c (D3D10) Cleanup 2022-04-24 22:03:08 +02:00
twinaphex 77adfb1c1a Simplify D3D10/D3D12 headers 2022-04-24 21:56:06 +02:00
twinaphex abe85e5e13 (D3D11) Get rid of more ununused inline functions 2022-04-24 21:38:05 +02:00
twinaphex d6aa3fdce5 (D3D9) Cleanups - get rid of more inline functions 2022-04-24 15:07:56 +02:00
twinaphex 96d7c31983 (D3D11) Cleanups 2022-04-24 13:40:38 +02:00
twinaphex fc2b3f1ed9 (D3D) Cleanups 2022-04-24 12:59:23 +02:00
twinaphex 736f6eb8b6 (D3D8) Rewrite D3D8 code somewhat - this driver will never
have renderchains, so simplify it
2022-04-24 12:23:01 +02:00
twinaphex 6a537a656d (D3D10/D3D11/D3D12) Get rid of save_hlsl codepath when loading
shaders (and they fail), or debug mode
2022-04-24 12:01:36 +02:00
twinaphex 3c6098dff7 (D3D11) Cleanups of unused inline functions 2022-04-24 11:59:20 +02:00
github-actions 1613ebdfb4 Fetch translations from Crowdin 2022-04-24 00:11:14 +00:00
twinaphex 8973f2ae01 (D3D11) Cleanups - use less inlined functions 2022-04-23 16:25:59 +02:00
twinaphex 0888297f31 (D3D11) Cleanups - go through less inlined functions 2022-04-23 11:36:10 +02:00
twinaphex 1887aee7c4 (D3D11) Cleanup some inline functions 2022-04-23 09:07:00 +02:00
github-actions d0ef0eccbf Fetch translations from Crowdin 2022-04-23 00:09:39 +00:00
twinaphex 5d82b36f9c (D3D11) Use less inlined functions 2022-04-22 22:58:35 +02:00
twinaphex 7f8a0e352f (D3D11) Get rid of some inline functions 2022-04-22 21:12:05 +02:00
twinaphex af029ed2f9 (Gitlab) Re-enable osx-ppc 2022-04-22 17:58:49 +02:00
twinaphex a25fabd6f7 (D3D9 HLSL) Set this parameter to 0 to indicate we are using
vertex declarations instead of FVFs
2022-04-22 16:41:08 +02:00
twinaphex 90f53bf6f4 (D3D9) Cleanups 2022-04-22 16:21:27 +02:00
twinaphex 845a469d4c (D3D8/9) Cleanups 2022-04-22 16:02:21 +02:00
Cthulhu-throwaway 669af1d9c6 (Netplay) Initialize client's allow_pausing to true (#13873) 2022-04-22 15:37:11 +02:00
twinaphex c4b8b9cfe9 (D3D8) Buildfixes 2022-04-22 15:29:33 +02:00
twinaphex 45c901ca53 (D3D8) Cleanups - get rid of many inline functions 2022-04-22 15:05:28 +02:00
twinaphex 0117228fec (D3D9 HLSL) Buildfix 2022-04-22 14:41:50 +02:00
twinaphex afb04b419b (D3D9) Cleanups 2022-04-22 14:37:39 +02:00
Alexander Trufanov 7f0cf651f1 Fix gamecrc parsing (#13872) 2022-04-22 14:31:37 +02:00
twinaphex b231ae7c41 (D3D9) Start getting rid of inline D3D9 functions 2022-04-22 14:25:13 +02:00
twinaphex cedf77d87f Move d3d9_renderchain_blit_to_texture to d3d9_common.c 2022-04-22 13:50:36 +02:00
twinaphex 6f71879012 (MSVC2017) Cleanup vcxproj 2022-04-22 13:38:58 +02:00
twinaphex bc018cff15 (D3D9 Cg) Cleanups 2022-04-22 13:36:42 +02:00
twinaphex 3336e61859 (Qt) Combine Qt header files 2022-04-22 08:26:27 +02:00
Autechre a23127c51b Update .gitlab-ci.yml 2022-04-22 06:43:33 +02:00
Autechre 3d1f01fecc Cg rewrite (#13871)
* (D3D9 Cg) rewrite/cleanups

* Buildfixes
2022-04-22 05:39:14 +02:00
twinaphex a0738111e9 (D3D9 Cg) Cleanups 2022-04-22 05:14:04 +02:00
github-actions cc4aa85bc0 Fetch translations from Crowdin 2022-04-22 00:12:32 +00:00
driver1998 2f0bdac2f5 Fixes the d3d9cg driver (#13870) 2022-04-22 00:15:54 +01:00
twinaphex 6f0bef6b7b (D3D8) Cleanups 2022-04-21 17:06:14 +02:00
twinaphex b43039f7b0 (D3D8) Buildfixes 2022-04-20 18:25:34 +02:00
twinaphex 5b97ba65c0 (D3D8) Buildfix 2022-04-20 18:06:20 +02:00
twinaphex ac45f16d79 Buildfix 2022-04-20 17:45:31 +02:00
twinaphex 437051c112 (D3D8) Replace inline function calls with straight function calls 2022-04-20 17:26:03 +02:00
twinaphex 56b08940c2 (D3D8) Replace inline function calls with direct function calls 2022-04-20 17:11:59 +02:00
twinaphex 8c27e58e20 (D3D8/D3D9) Cleanups 2022-04-20 16:00:00 +02:00
twinaphex 3cf86d3093 Get rid of d3d9_SDKVersion 2022-04-20 15:47:32 +02:00
twinaphex 53b039cf7d Try to use inline functions less - call D3D9 functions directly 2022-04-20 15:01:40 +02:00
Michael Burgardt e185955bc1 Add Catalan language option (#13850) 2022-04-20 14:37:24 +02:00
twinaphex a348571ba8 (D3D9 HLSL/Cg) Create specialized versions of set_vertices_on_change 2022-04-20 14:04:12 +02:00
twinaphex d1cbba2847 (D3D9 HLSL) Don't go through inlined functions 2022-04-20 13:34:20 +02:00
twinaphex 825bc0739e (D3D9) Cleanups 2022-04-20 12:50:59 +02:00
twinaphex e1f74d3959 Merge renderchain code 2022-04-20 12:32:44 +02:00
twinaphex 68032c7734 (D3D9) Split up D3D9 driver into two separate drivers - one for D3D9 HLSL
and another one for D3D9 Cg
2022-04-19 15:45:22 +02:00
twinaphex 6195711bb3 (D3D9) Move functions to d3d9.c 2022-04-19 14:49:08 +02:00
twinaphex 6a032fc1f8 (D3D9) Move global over to d3d9_common.c 2022-04-19 14:27:40 +02:00
twinaphex 4114545564 (D3D9) Remove d3d9_clear 2022-04-19 14:03:29 +02:00
twinaphex 7c37f9c053 Get rid of some inline functions 2022-04-19 13:49:32 +02:00
twinaphex bceb753993 Turn it into static function 2022-04-19 13:19:14 +02:00
twinaphex df3927dd33 Cleanups 2022-04-19 12:12:03 +02:00
Joel Puig Rubio 03146e4604 Label Valencian as a Catalan dialect (#13837) 2022-04-19 11:58:50 +02:00
twinaphex a5802ce757 (D3D9) Cleanups 2022-04-19 11:03:24 +02:00
twinaphex 9a354982a9 Move common D3D9 common out to file d3d9_common.c 2022-04-19 10:32:15 +02:00
Jamiras 56c9db9c4c re-enforce hardcore limitations once achievements are loaded (#13862) 2022-04-19 09:41:49 +02:00
Vladimir Serbinenko da5d135a9f Enable rwav on libnx (#13857)
While on it merge setting of HAVE_RWAV with inclusion of rwav-files in
Makefile.common
2022-04-17 20:02:53 +02:00
twinaphex 7bdcc8bfe1 (D3D9) Cleanups 2022-04-17 02:23:28 +02:00
github-actions ee6570f3dc Fetch translations from Crowdin 2022-04-17 00:11:12 +00:00
twinaphex 2ef0ea0cc7 Cleanups 2022-04-16 22:33:18 +02:00
driver1998 67e3e37ab0 d3d9 hlsl xmb fix (#13855) 2022-04-16 19:21:32 +02:00
Gabriel Morazán 3f2d4b1885 Fix wrong version number (Android) (#13852) 2022-04-16 18:51:21 +02:00
github-actions 5121c66624 Fetch translations from Crowdin 2022-04-16 00:10:32 +00:00
github-actions 1ff91fe74d Fetch translations from Crowdin 2022-04-15 00:10:17 +00:00
Autechre a597c95c98 Update CHANGES.md 2022-04-14 08:29:41 +02:00
Autechre f38b7afce9 Update CHANGES.md 2022-04-14 08:29:07 +02:00
barbudreadmon d14d218b76 allow proper descriptor declaration for analog triggers (#13845) 2022-04-13 15:11:30 +02:00
twinaphex 95fad4d32c Cleanups 2022-04-13 15:08:22 +02:00
sonninnos c185c3b916 Hide UI Companion menu items when they are not available (#13807) 2022-04-13 14:50:33 +02:00
hunterk 0a9ea2da4d allow audio playback capture on android (#13846) 2022-04-13 14:50:21 +02:00
github-actions dcc6727875 Fetch translations from Crowdin 2022-04-13 00:11:10 +00:00
github-actions f9d0a49d42 Fetch translations from Crowdin 2022-04-12 00:10:22 +00:00
Autechre 9b282aa742 Update CHANGES.md 2022-04-11 07:17:19 +02:00
twinaphex c659751976 (PSP) Take out HAVE_LANGEXTRA for PSP - RAM is not at a premium for this
console
2022-04-11 07:11:16 +02:00
github-actions 41d84c6db1 Fetch translations from Crowdin 2022-04-11 00:10:18 +00:00
github-actions 260a0a4194 Fetch translations from Crowdin 2022-04-10 00:10:42 +00:00
Gabriel Morazán e9da17b058 Bump up version numbers. (UWP) (#13841)
* Bump up version number. (msvc2017)

* Bump up version number. (msvc2019)
2022-04-10 00:43:56 +02:00
twinaphex 5ed375b7df Bump version to 1.10.3 2022-04-10 00:03:11 +02:00
Autechre d3004fe2c2 Update CHANGES.md 2022-04-09 23:58:40 +02:00
twinaphex ee9b6ba78e Hide Help menu until there is useful info to be shown 2022-04-09 17:23:14 +02:00
github-actions 5d2b5e8722 Fetch translations from Crowdin 2022-04-09 00:10:39 +00:00
Tony 044e1ec655 (WinRaw) Fix multiple light guns (#13840)
* (WinRaw) Fix multiple light guns

* Strip non-ASCII characters from mouse display names
2022-04-08 21:46:00 +02:00
github-actions d82bba38ad Fetch translations from Crowdin 2022-04-08 00:11:05 +00:00
github-actions c3220e212f Fetch translations from Crowdin 2022-04-07 00:10:52 +00:00
nfp0andnfp0 d13fec5db5 Bring back number of swapchain images log (#13836)
Co-authored-by: nfp0 <[email protected]>
2022-04-06 19:52:22 +02:00
Tony 85fef3427a Fast-Forward Frameskip improvement (#13834) 2022-04-06 15:39:25 +01:00
github-actions bf579df8b9 Fetch translations from Crowdin 2022-04-06 00:10:20 +00:00
Vladimir Serbinenko 2ef2ff1b36 Add a configurable workaround for Android reconnecting devices
Closes https://github.com/libretro/RetroArch/issues/3414

I have investigated the issue. The crux of the problem is that on Android there
is no way distinguishing 2 scenarios:
1) 2 identical bluetooth controllers A and B and first there are button presses
only on controller A and then on controller B
2) the same controller disconnects and reconnects.
Android doesn't give bluetooth mac address of where the touch came from, only
opaque ID and this opaque ID changes after reconnect. Hence without changes to
android this is infeasible without giving up the ability for 2 users to play on
identical controllers.

I guess that this sacrifice makes sense for affected users
2022-04-05 18:40:27 +02:00
Autechre 5e85d22d8f Update CHANGES.md 2022-04-05 17:48:23 +02:00
Braden Farmer ee6c9384e9 [Android] Decouple Play Core dependency to bring app into compliance for F-Droid (#13830) 2022-04-05 08:38:54 +02:00
twinaphex fb2da8e8fd Backport https://github.com/libretro/libretro-common/pull/192/commits/42b3ebe12afe3cd6700bef4a657ca0f0a643d08f 2022-04-05 07:32:22 +02:00
twinaphex 573dfb87f2 Merge branch 'master' of https://github.com/libretro/RetroArch 2022-04-05 07:30:15 +02:00
github-actions a43ae5d08a Fetch translations from Crowdin 2022-04-05 00:10:01 +00:00
Jamiras dcabde33fc disallow manual frame delay setting in hardcore (#13826) 2022-04-05 01:06:47 +02:00
Autechre 9cbcaf1798 Update CHANGES.md 2022-04-04 20:25:00 +02:00
jdgleaver c687a29d6a Input Remaps: Fix saving of 'Analog to Digital Type' when configuration overrides are used (#13824) 2022-04-04 19:08:17 +02:00
Autechre a91b538ba9 Update CHANGES.md 2022-04-04 16:51:34 +02:00
jdgleaver 1e7265e7aa Static Platforms: Populate all history list metadata when launching content from playlists (#13822) 2022-04-04 16:33:44 +02:00
github-actions 77b5e31203 Fetch translations from Crowdin 2022-04-04 00:10:31 +00:00
Autechre 23f5b6fb86 Update CHANGES.md 2022-04-03 19:29:36 +02:00
Tomáš Kelemen b2b2425203 bluetoothctl: add / modify pairing steps (#13818)
due to some changes in bluez / bluetoothctl, `pairable on` is required
in order to create a `[LinkKey]` section in the configuration file for
the connected device. if this section is missing, the device / gamepad
will not pair after being disconnect and has to be repaired again.
2022-04-03 19:29:03 +02:00
twinaphex e38e699fbf Merge branch 'master' of https://github.com/libretro/RetroArch 2022-04-03 18:09:17 +02:00
Autechre f353898a9d Update CHANGES.md 2022-04-03 04:09:18 +02:00
Tomáš Kelemen 2f6b9c7971 core system files downloader: remove for Lakka (#13794)
Lakka ships these files already in the image. in some cases downloading
files provided by the buildbot can cause issues, as these files might be
not compatible with the core version provided by the Lakka image.
2022-04-03 04:08:59 +02:00
Romeo 686628b8ad (Database) Serial scanning for Wii now includes WBFS (#13816)
* Update task_database.c
2022-04-03 04:08:30 +02:00
github-actions acf21260e7 Fetch translations from Crowdin 2022-04-03 00:10:31 +00:00
twinaphex 14578c0b18 (gl3/glcore) Remove gl3_build_default_matrix 2022-04-02 23:48:34 +02:00
twinaphex 8cdfc8e8b6 Fix CXX_BUILD errors 2022-04-02 20:37:54 +02:00
twinaphex 3873af37c6 (Vulkan) Turn this code into a switch instead of several conditionals 2022-04-02 19:10:56 +02:00
twinaphex 65b8ec4cef (Vulkan) Fix crashes 2022-04-02 19:02:54 +02:00
Autechre 794900a1ed Update CHANGES.md 2022-04-02 17:06:03 +02:00
Tony 0dbd2bc3b9 (XMB) Shadow adjustments (#13815) 2022-04-02 17:05:35 +02:00
Autechre 9dfc5950aa Update CHANGES.md 2022-04-02 17:04:51 +02:00
Mats 4a1a1e2fa7 (steam) Introduce Steam Rich Presence (#13798) 2022-04-02 08:07:40 +01:00
jSTE0 fccef557fc miyoo: Enable ALSA audio driver and default to it (#13814)
Enable it as it does not freeze. This provides an audio backend that
can report its buffer status, allowing auto frame skip to work on cores
that support it.

Do not build or include alsathread as it results in choppy audio.
Similarly, leave tinyalsa disabled as it plays back at a higher pitch
and is also choppy.

Change the default sample rate to 32000Hz as the previous default of
32730Hz is derived from the 3DS.
2022-04-02 08:07:25 +01:00
github-actions 91e4bbe1e4 Fetch translations from Crowdin 2022-04-02 00:09:55 +00:00
Cthulhu-throwaway 8194629314 [Threaded Video] Stability Fixes (#13813) 2022-04-01 20:34:28 +02:00
Tony 754d3b224f Fix offset + crash when clearing input port binds (#13811) 2022-04-01 18:13:36 +02:00
Tony 9276921f5d Add sublabels for 'Aspect Ratio' and windowed 'Opacity/Decorations/Menubar' (#13808) 2022-04-01 14:03:10 +01:00
twinaphex 510af4678e Disable AI Service by default 2022-04-01 02:21:48 +02:00
github-actions af9590d45e Fetch translations from Crowdin 2022-04-01 00:11:01 +00:00
Tony 569b3945d6 Move 'Show Menu Bar' under 'Windowed Mode' settings (#13806) 2022-03-31 17:30:44 +02:00
Tony caaaaf99f7 Add sublabels for 'Subsystems' and 'Input Deadzone/Sensitivity' (#13804) 2022-03-31 16:02:15 +02:00
twinaphex 0eb4444ad1 (mbedtls) Silence warnings 2022-03-31 15:28:49 +02:00
Tony 0db3116805 Move 'On-Screen Notifications' to top (#13786) 2022-03-30 21:00:42 +02:00
Michael Burgardt fd35162cbe Add Valencian language option (#13789) 2022-03-30 17:59:09 +02:00
twinaphex 5319b592e9 Silence some Wayland warnings 2022-03-30 17:29:07 +02:00
Autechre 4c3a4d66df Cxx buildfixes (#13803)
* CXX_BUILD buildfixes
* (D3D11) Buildfixes for CXX_BUILD
* (Linux/qb) Disable KMS for Linux when building for C89, headers use inline which is not
available for C89
2022-03-30 17:30:20 +02:00
twinaphex a7569b5712 More CXX_BUILD buildfixes 2022-03-30 15:45:48 +02:00
twinaphex 26fec17593 CXX_BUILD fixes for net_natt.c 2022-03-30 15:32:23 +02:00
twinaphex c8d57fe667 (CXX_BUILD) Some CXX_BUILD fixes 2022-03-30 15:13:28 +02:00
github-actions 1df0285091 Fetch translations from Crowdin 2022-03-30 00:10:01 +00:00
revvv 1cd6413e24 Wii U: Fix USB get_device_name(), don't truncate to three chars 2022-03-29 18:25:27 +01:00
Autechre de4e56ecf2 Update CHANGES.md 2022-03-29 03:08:45 +02:00
github-actions dc2f6da813 Fetch translations from Crowdin 2022-03-28 00:10:25 +00:00
Autechre 06921aebed Update CHANGES.md 2022-03-27 18:10:02 +02:00
OsirizX 083914aa5c [PSL1GHT] Update Makefile.psl1ght 2022-03-27 18:03:45 +02:00
OsirizX 80b06c37fe [PSL1GHT] Add experimental PSMove support for ps3 2022-03-27 18:03:40 +02:00
OsirizX d7002641c3 [PSL1GHT] Add libco support for ps3 2022-03-27 18:03:35 +02:00
OsirizX 4d367a2b59 [PSL1GHT] Add RSX graphics support for ps3 2022-03-27 18:03:30 +02:00
Autechre 1250ecbc46 Update CHANGES.md 2022-03-27 05:45:01 +02:00
twinaphex da15bc2802 Fix C89_BUILD 2022-03-27 05:32:41 +02:00
strotlog 91bf7b553a (mmap) Handle disconnect bits on both sides of len 2022-03-27 04:36:03 +01:00
jSTE0 55b77cb663 gfx/rs90: Optimise layout of sdl_rs90_video
Move frequently accessed member variables to the beginning of the
structure to improve cache locality. Having menu_texture at the end of
the structure also saves one instruction in the hot path of
sdl_rs90_gfx_frame() (for the ARMv5TE Miyoo) as well as a few other
functions.
2022-03-27 04:35:36 +01:00
revvv 78e7d23c14 Fix USB gamepad support
1. get_axis() didn't use AXIS_NEG_GET() / AXIS_POS_GET()
2. packet_handler() needs byte shift
3. log messages need SWAP_IF_BIG()
2022-03-27 04:35:06 +01:00
revvv b6ae697fad Make find_connection_entry() more specific
Controllers with same VID/PID are distinguished by the device name.
1. The Wii U only sends a prefix of the device name.
2. The check preferred the device name over VID/PID which was not
   intended.

Example: The device name "USB Gamepad" is truncated to "USB" which
was mapped to "Generic SNES USB Controller", although VID/PID did not
match.
2022-03-27 04:35:06 +01:00
revvv 75f94950bf Use "Retrode" as device name
Otherwise autoconfig file can't be found on the Wii U:
VID/PID are not available, so it has to match with 'input_device' and I
don't want to add additional autoconfig files with different
'input_device' strings.
2022-03-27 04:35:06 +01:00
github-actions 8b6fe0a934 Fetch translations from Crowdin 2022-03-27 00:10:36 +00:00
Jamiras f63c11ebaf free audio voices properly 2022-03-26 07:58:31 +01:00
github-actions 08c1c05f82 Fetch translations from Crowdin 2022-03-26 00:10:27 +00:00
twinaphex 6d73de8fa7 (iOS) Update to new Development Team 2022-03-25 16:55:22 +01:00
twinaphex 03ce03eb81 Remove unused variable 2022-03-25 16:19:39 +01:00
twinaphex af0e49df57 Fix some warnings 2022-03-25 15:41:30 +01:00
github-actions d89ab49d32 Fetch translations from Crowdin 2022-03-25 00:09:50 +00:00
Autechre b2ef25e20f Update CHANGES.md 2022-03-24 13:47:20 +01:00
sonninnos 6fcf291df4 Fix analog stick not working with 'Unified Menu Controls' 2022-03-24 13:46:57 +01:00
Colin Kinloch 60fab1c4a1 (Wayland) Create wl_data_device only when wl_seat and wl_data_device_manager exist 2022-03-23 06:52:16 +01:00
github-actions 0f85bbf32d Fetch translations from Crowdin 2022-03-23 00:10:06 +00:00
Gabriel Morazán 59b79e2191 Bump up version number (UWP msvc2019) 2022-03-22 21:40:24 +01:00
Gabriel Morazán eaf2f618b5 Bump up version number (UWP msvc2017) 2022-03-22 21:40:24 +01:00
twinaphex f3ce04be0c Bump up version + CHANGELOG 2022-03-22 21:01:06 +01:00
revvv b98b9471d9 Refactored to use new multi_pad interface 2022-03-22 18:17:50 +01:00
revvv 9b00a932d5 Remove special treatment for Retrode gamepad adapter 2022-03-22 18:17:50 +01:00
DisasterMo 2f88edb93f Add 6x10 font compatibility
This adds compatibility with 6x10 fonts. The hope is to be able to add more fonts to RGUI, like Latin Supplement Extended and others, in the future.
2022-03-22 18:14:46 +01:00
sonninnos 8fc14354e9 (RGUI) Add 'Gray Dark + Light' themes 2022-03-22 17:27:54 +01:00
sonninnos d7983f2827 (GLUI) Divider addition fix 2022-03-22 15:24:31 +01:00
sonninnos 8e962e495c (GLUI) Add 'Gray Dark + Light' themes 2022-03-22 13:09:48 +01:00
DisasterMo 1aa542be2d Fix messed up Crowdin config and restore synchronization 2022-03-22 06:59:12 +01:00
sonninnos fb444f9d91 (Ozone) Add 'Gray Dark + Light' themes 2022-03-22 06:59:05 +01:00
Colin Kinloch d95bc2dd54 (Wayland) Dynamically load libdecor at runtime 2022-03-22 06:58:41 +01:00
jdgleaver 1e31a8d5fd Remove 'Advanced Settings' flag from 'Settings > Core' menu 2022-03-21 15:10:31 +01:00
jdgleaver 2feca8994d Revert "(config_file) Prevent hash map corruption when calling config_unset()"
This reverts commit e5df8f7850.
2022-03-21 15:08:02 +01:00
jdgleaver 28247ba65d (config_file) Prevent hash map corruption when calling config_unset()
- This is a workaround for the broken 'RHMAP_DEL_STR()' implementation in rhmap.h
- This commit should be reverted when rhmap.h is fixed
2022-03-21 15:08:02 +01:00
jdgleaver 05b7ac47c3 Add 'Reset Input Mapping' option to 'Manage Remap Files' menu 2022-03-21 15:08:02 +01:00
Bernhard Schelling 780fdf721e Fix possible hash map corruption when deleting string keys 2022-03-21 15:07:53 +01:00
Colin Kinloch 47c850c7fd (Wayland) Dedupe VK/GL code 2022-03-21 07:50:34 +01:00
Colin Kinloch c6892d03c3 (Wayland) Fix splash screen when using xdg_toplevel 2022-03-20 20:18:11 +01:00
Colin Kinloch 82c69995f0 (Wayland) SHM anti-collision for the splash screen 2022-03-20 18:31:30 +01:00
Jamiras 4d2adee166 use display name for UI 2022-03-20 18:31:07 +01:00
Jamiras a18e29cc8a update to rcheevos 10.3.3 2022-03-20 18:31:07 +01:00
Colin Kinloch 065fb5acee (Wayland) Skip splash screen if window is not ready 2022-03-18 16:29:49 +01:00
sonninnos 27a6210f96 (XMB) Add title margin adjustment 2022-03-18 13:24:50 +01:00
jdgleaver c6e83d23f5 RETRO_ENVIRONMENT_SHUTDOWN Fixes
- Ensure core is properly unloaded when RETRO_ENVIRONMENT_SHUTDOWN is called
- Ensure menu stack is properly flushed when RETRO_ENVIRONMENT_SHUTDOWN is called
2022-03-18 13:15:47 +01:00
sonninnos 72513e29b2 Fix keyboard device remap nulling 2022-03-18 00:30:59 +01:00
github-actions 6d67c16507 Fetch translations from Crowdin 2022-03-17 00:08:48 +00:00
Mats 910a652b3c (steam) Replace OSK with the Steam one on the deck 2022-03-16 19:00:16 +01:00
jdgleaver ea77410037 Add 'Manage Remap Files' submenu + automatically save input remaps when closing content 2022-03-16 18:59:49 +01:00
Vladimir Serbinenko 96ddb301b6 Fix x1 name in emscripten 2022-03-16 18:08:20 +01:00
Francisco Javier Trujillo Mata fc653fad90 Add explicitly the supported menu drivers in PS2 2022-03-16 18:03:35 +01:00
Francisco Javier Trujillo Mata db74d7c81b Revert "Fix typo in Makefile.common when comparing for HAVE_MATERIALUI, HAVE_XMB and HAVE_OZONE"
This reverts commit 6f687fbb6c.
2022-03-16 18:03:35 +01:00
github-actions 675fe72ef0 Fetch translations from Crowdin 2022-03-16 00:08:44 +00:00
Francisco Javier Trujillo Mata e70b3d49b7 Fix typo in Makefie.ps2 2022-03-16 00:07:04 +01:00
Francisco Javier Trujillo Mata a404689894 Fix typo in Makefile.common when comparing for HAVE_MATERIALUI, HAVE_XMB and HAVE_OZONE 2022-03-16 00:07:04 +01:00
sonninnos 646b0f7209 (XMB+Ozone) Fix input icons 2022-03-15 22:34:15 +01:00
twinaphex 5253e4be23 Revert retroarch.cfg (regression introduced here - https://github.com/MajorPainTheCactus/RetroArch/commit/8fd35dae2d66ebe3fb4f04930ded2074e528ed 2022-03-15 17:41:23 +01:00
Vladimir Serbinenko 4d2178fafc Add missing emscripten cores 2022-03-15 17:44:00 +01:00
revvv 492a83e6d5 Wii: Fix find_connection_entry(): needs unsigned int
Otherwise the USB gamepad cannot be found, if VID/PID has leading zero.
For example: Retrode gamepad adapter:
             vid=1027 (0x403) pid=38849      (0x97c1) becomes
             vid=1027 (0x403) pid=-26687 (0xffff97c1)
2022-03-15 17:43:46 +01:00
jdgleaver b08314cf60 Prevent 'global' configuration of input libretro device type 2022-03-15 17:43:28 +01:00
TheRetroPirate 28145abde9 forgot to include the changes for the c_converter to include the metadata in the rdb files 2022-03-15 05:51:20 +01:00
TheRetroPirate 6f90b24f72 added more categories to the explore menu 2022-03-15 05:51:20 +01:00
Giovanni Cascione fe943a65e8 mali_fbdev: fix segfault switching video threaded from quickmenu 2022-03-15 05:45:38 +01:00
MajorPainTheCactus 3a25e1fbc3 Fixed D3D11 HDR bug just introduced 2022-03-15 05:44:07 +01:00
MajorPainTheCactus f3bda542d6 Fixed crash when using stock shader and HDR and previous optimisation 2022-03-15 05:44:07 +01:00
MajorPainTheCactus 32b8560858 Removed redundant copy of buffer in HDR mode if the shader has already a HDR format i.e R10G10B10A2 2022-03-15 05:44:07 +01:00
Colin Kinloch 86ca2006ea (Wayland) Fallback to shm_open when memfd_create fails (#13740) 2022-03-14 19:20:29 +01:00
jdgleaver 284fb6baa4 (menu_cbs_deferred_push.c) Minor clean-up of general_push() (#13742) 2022-03-14 18:18:07 +01:00
jdgleaver 1490ad18a2 Prevent log spam when using rewind hotkey with cores that don't support rewind if rewind functionality itself is disabled (#13741) 2022-03-14 18:17:43 +01:00
twinaphex 596bc4e686 (Steam) Swap OK/Cancel buttons by default 2022-03-14 18:12:25 +01:00
Mats d675276e28 (steam) Thread safety and style fixes (#13739) 2022-03-13 18:14:20 +01:00
Tony c1216fd16d (XMB) Vertical Fade corrections (#13736) 2022-03-12 16:50:56 +01:00
Nikos Chantziaras d9bc8fb796 Ozone: Add thumbnail scale option (#13620)
* Ozone: Add thumbnail scale option

* CHANGES.md: Add ozone thumbnail bar scaling option
2022-03-11 15:51:41 +01:00
Jamiras b4d9d6c5fc move slowdown disable into toggle_hardcore_active (#13734) 2022-03-11 07:17:54 +01:00
Nikos Chantziaras b094c58081 Add hotkey for toggling sync to exact content framerate (#13725)
* Add hotkey for toggling sync to exact content framerate

* CHANGES.md: add sync to exact content framerate toggle hotkey
2022-03-10 17:21:08 +01:00
jdgleaver 53bd6908e1 UWP build fix (#13726) 2022-03-10 15:15:45 +01:00
github-actions 0ecaa609f9 Fetch translations from Crowdin 2022-03-10 00:09:57 +00:00
jSTE0 715c054de5 Improve CPU architecture and model name identification for Miyoo (#13704)
* features_cpu: Return model name on non-x86 Linux platforms

Extract model name from /proc/cpuinfo.

* platform/unix: Rework identification of classic Arm CPUs

Identify pre-ARMv7 CPUs based on the machine hardware name starting with
"arm" instead of matching every individual variant. This will then
include the ARM926EJ-S which has armv5tejl as its machine hardware name.
2022-03-09 21:27:12 +01:00
jdgleaver c67806dbd7 Enable manual selection of which cores are displayed in the 'Standalone Cores' menu (#13722) 2022-03-09 17:49:16 +01:00
Colin Kinloch 3b08d63b23 (Wayland) Initial drag and drop (wl_data_offer) support (#13515) 2022-03-09 16:34:47 +01:00
Philippe Simons 8a8c2da042 emscripten: add jumpnbump core (#13720) 2022-03-09 15:31:31 +01:00
Mats 249241d7cd (steam) Initial integration with Steam API w/ mist (#13710) 2022-03-09 15:05:07 +01:00
Tony de22e06862 Reorder items in 'Core' menu (#13697) 2022-03-09 14:14:37 +01:00
Jamiras 4f62612044 replace real file system function with virtual wrapper call (#13717) 2022-03-09 08:20:58 +01:00
MrHuu 9ed51bc528 (3DS) Add new3ds speedup toggle (#13718) 2022-03-09 08:20:15 +01:00
github-actions b1f52a25ea Fetch translations from Crowdin 2022-03-09 00:08:58 +00:00
Autechre 32594e6643 Revert "(.gitlab-ci.yml) Temporarily disable build-retroarch-osx-ppc target while macosx-legacy runner is offline (#13685)" (#13716)
This reverts commit b74b2f9b87.
2022-03-08 15:19:37 +01:00
vaguerant 1726d8acb9 Add Optimize for GamePad option on Wii U (#13257)
* Add 'Optimize for Wii U GamePad' option

* style nit
2022-03-08 14:56:51 +01:00
twinaphex 9bcee062ff Cleanups/warnings 2022-03-07 19:32:01 +01:00
Autechre df553bb7f5 Update CHANGES.md 2022-03-07 19:12:23 +01:00
Michael Burgardt 56f2e2f7b8 Add Czech language option (#13680) 2022-03-07 19:11:39 +01:00
yoshisugaandgithub-actions 01cb10d8b3 [iOS 13+] Support a toolbar that allows toggling of onscreen keyboard and touch mouse (#13700)
* Fetch translations from Crowdin

* Support for showing and hiding indicator and navigation bar

* Refactored to use a view model

* Support defining helper bar items and support showing/hiding keyboard

* reorganized source files into separate logical files

* Moved mouse support to swift (except for delegate implementation), added support for enabling touch mouse in helper bar; reorganized swift source files

* Reorganized keyboard files; added the touch mouse messages to the RA localization files; use the RA notification system

* change keyboard letters to uppercase for clarity

Co-authored-by: github-actions <[email protected]>
2022-03-07 19:09:49 +01:00
twinaphex 4d112da58d Silence some MSVC code analysis warnings 2022-03-07 19:02:46 +01:00
Vladimir Serbinenko c11a798467 Series of djgpp fixes (#13705)
* features_cpu: Fix clock for djgpp

* frontend_dos_set_fork: Fix wrong id names

* dos_input: Fix missing indexing

* dos_joypad: Fix wrong id name

* Fix menu drawing

Menu is already prescaled to VGA_WIDTH x VGA_HEIGHT in vga_menu_frame. We need
to always use those dimensions

* Change dos compilation from griffin to common

* Set vga menu size to 320x200

* Add DOS compilation in gitlab-ci.yml
2022-03-05 15:53:18 +01:00
twinaphex 460f5e745d Silence some MSVC 2019 code analysis warnings 2022-03-05 14:39:56 +01:00
Keith Bowes 97c5c269a7 Added Changelog for RetroArch 1.10.1 (#13702) 2022-03-04 17:36:42 +01:00
Vladimir Serbinenko 4a53c6771c Several fixes and improvements do NGC and Wii (#13698)
* Support new elf2dol path in Makefile.griffin

* Fix NULL pointer dereference when no core info is available

* Fix double include of different versions of libogc

* Move ngc and wii to Makefile.common

Resulting binary is 60K *smaller*. This is surprising but probably due to
less inlining happening

* gx_gfx: Fix hang on gfx initialization

* Remove sthread_isself on NGC/Wii

It relies on pthread_equal that is not there for either legacy pthreads
or normal pthreads on those platforms

* Wii networking

* Missing includes in split

* Network fixes

* Fix logging of non-format string as a format

* Support for gx netlogger

* Network fix

* Network fixes

* Network info

* gx: Move config files to app directory

Otherwise it clashes between wiiU and vWii version with unpredictable
effects
2022-03-04 13:43:00 +01:00
Gabriel Morazán 35312feab6 Bump version number for UWP Build files. (#13695)
* Bump version number (msvc2019-UWP)

* Bump version number (msvc2017-UWP)
2022-03-03 15:39:51 +01:00
twinaphex 621f51394b Bump version 2022-03-03 14:28:38 +01:00
jSTE0 4896832612 platform/miyoo: Enable NEAREST audio resampler (#13694)
This platform actually defaults to the NEAREST audio resampler.
2022-03-03 12:56:39 +01:00
jdgleaver 3e4201ed30 Bitmap font improvements (#13693) 2022-03-02 16:47:46 +01:00
jdgleaver 4c87c307cc Disable per-game and per-content-directory remaps when running contentless cores (#13687) 2022-03-01 09:45:17 +01:00
Tony e8e8404741 (WinRaw) Enable mouse overlay control (#13688) 2022-03-01 09:45:07 +01:00
jdgleaver f6dc1c6d93 Disable per-game and per-content-directory shader presets when running contentless cores (#13690) 2022-03-01 09:44:55 +01:00
jdgleaver b74b2f9b87 (.gitlab-ci.yml) Temporarily disable build-retroarch-osx-ppc target while macosx-legacy runner is offline (#13685) 2022-02-28 13:57:16 +01:00
jdgleaver 0f2cb88ec6 Enable config overrides for contentless cores (#13684) 2022-02-28 13:45:51 +01:00
Tony 69cf8b1795 Fix some command line segfaults (#13682) 2022-02-28 10:32:50 +01:00
Tony cfd408db86 Show core version in 'Core Information' (#13677) 2022-02-27 05:30:12 +01:00
Tony 3b1d75d9cf Console help output cleanup (#13678) 2022-02-27 05:30:04 +01:00
yoshisugaandgithub-actions ba0d42ceb3 [iOS] Fix RetroArch_iOS9 project (#13679)
* Fetch translations from Crowdin

* Fix iOS 9 xcode project to include the JITSupport files

Co-authored-by: github-actions <[email protected]>
2022-02-27 05:18:25 +01:00
github-actions 6faf2fe5b9 Fetch translations from Crowdin 2022-02-27 00:10:40 +00:00
Guo Yunhe ab65e31e09 fix: osd fonts for chinese, korean, arabic and persian (#13639) 2022-02-26 18:05:55 +01:00
Gabriel Morazán 79e4106cc8 (Xbox/UWP) A small oversight from PR #13669. (#13674)
* Forgot to add the flags there, oops. (msvc2017)

* Forgot to add the flags there too, oops. (msvc2019)
2022-02-26 17:57:29 +01:00
Braden Farmer e215f56490 Android: Add HAVE_LANGEXTRA back to makefile (#13676)
Fixes #13672
2022-02-26 17:56:38 +01:00
github-actions 2c65382d50 Fetch translations from Crowdin 2022-02-26 00:09:11 +00:00
jdgleaver 8739264485 Enable runtime logging for contentless cores (#13671) 2022-02-25 18:23:55 +01:00
Jamiras e4d62a3b9f apply disconnect logic for command_memory_read/write (#13668) 2022-02-25 18:23:38 +01:00
Gabriel Morazán e137f2c9dc (Xbox/UWP) Fix CHD not working with Cheevos / Add 7zip support. (#13669)
* Add HAVE_CHD and HAVE_7ZIP to UWP (msvc2017)

* Add HAVE_CHD and HAVE_7ZIP to UWP (msvc2019)

* Add _7ZIP_ST to UWP (msvc2017)

* Add _7ZIP_ST to UWP (msvc2019)
2022-02-25 18:23:29 +01:00
github-actions 8f82bcaad9 Fetch translations from Crowdin 2022-02-25 00:09:27 +00:00
TheRhysWyrill bc756e31d9 Updated Xbox/UWP Icon and Splash Screen (#13651)
* Asset Optimization

* Asset Optimization

* New Xbox/UWP Icon and Splash Screen

Replaced the Icon and Splash Screen for the Xbox/UWP port of RetroArch with a more subtle design.

* Updated Xbox/UWP Icon and Splash Screen

Updated the Icon and Splash Screen for the Xbox/UWP port of RetroArch with a more subtle design.

* Updated Xbox/UWP Icon and Splash Screen

Updated the Icon and Splash Screen for the Xbox/UWP port of RetroArch with a more subtle design.
2022-02-24 23:50:19 +01:00
Tony 977a7d3eb6 Volume hotkey logic+response improvement (#13667) 2022-02-24 23:09:17 +01:00
jdgleaver b697f556e5 Ensure that cores are deinitialised correctly following initialisation failure (#13665) 2022-02-24 14:49:33 +01:00
Tony f0d9add1b2 (DInput/WinRaw) Ignore 'unknown/undefined' key (#13660) 2022-02-24 07:10:47 +01:00
Tony 7768c296b9 Prevent refresh rate switching to half frame rate modes (#13656) 2022-02-24 07:10:27 +01:00
github-actions 569704fb37 Fetch translations from Crowdin 2022-02-24 00:09:21 +00:00
jdgleaver ee4486068d (XMB+Ozone) Improve efficiency/accuracy of History/Favorites icon rendering (#13661) 2022-02-23 16:53:24 +01:00
github-actions 3d08aa8e32 Fetch translations from Crowdin 2022-02-23 00:09:57 +00:00
jdgleaver 9b0cb0fc92 Add 'Standalone Cores' menu (#13655) 2022-02-22 19:23:48 +01:00
Colin Kinloch 6dec52fda7 (Wayland) Fix wayland vulkan not reacting to initial resize (#13640)
(Wayland) Correct log stamps for GL or Vulkan

(Wayland) Fix style issues and sync formatting on identical code in GL and Vulkan
2022-02-22 08:58:46 +01:00
Cthulhu-throwaway 023f427856 [UPnP] Stability fixes (#13652) 2022-02-22 08:22:10 +01:00
yoshisuga bc02f8319e [iOS] New iOS 13 project to support Swift; Custom keyboard and touch mouse support (#13435)
* Support for Swift, added emulator keyboard

* fixed toggle key handling using magic number hack for now

* fixed keyboard transparency slider for now with suboptimal fix; add gesture recognizer to hide/show keyboard

* Support CocoaView extensions in Swift; move keyboard delegate impl and setup to swift extension

* moved keyboard view model creation out of EmulatorKeyboard

* implement key pressed delegate in swift extension

* added input method for directly sending RETROK_* codes to support a touchscreen keyboard; assign keyboard model delegates; updated keyboard layout (added F1-F12 keys); change shift, control and alt keys to be modifiers

* enable focus mode when custom keyboard is shown; enable/disable overlay when custom keyboard is toggled

* Specify -DHAVE_OPENGLES2 instead of -DHAVE_OPENGLES3 since glsym_es3.h does not compile in iOS 14.5
Fix tvOS build using compiler flags

* Create new project for iOS 13 deploy target; add check for deploy target to conditionally compile for new iOS 13 specific feature (custom keyboard)

* force disable core info caching for iOS, use opengl es2 for debug

* Add flag for iOS custom keyboard - 3-finger swipe up to show, 3-finger swipe down to hide

* use OpenGLES2 instead; using ES3 results in compile time errors on iOS 14.5

* code cleanup

* Updated references to -DDONT_WANT_ARM_ASM_OPTIMIZATIONS flag

* Add JIT support for non-jailbroken devices

* iOS: Add support for touch mouse handler

* Added a HAVE_IOS_TOUCHMOUSE preprocessor macro so that it builds under the iOS11_Metal xcode project

* Changed click-and-drag behavior to double tap hold and drag

* Visual improvements to the emulator keyboard: updated colors, improved key-press effect
2022-02-22 08:21:34 +01:00
github-actions 3d54d952a5 Fetch translations from Crowdin 2022-02-22 00:09:41 +00:00
Michael Burgardt 7df18ec59d Improve some texts (#13645) 2022-02-21 20:11:25 +01:00
github-actions 644e7dce7c Fetch translations from Crowdin 2022-02-21 00:09:21 +00:00
github-actions 3ae7d19cd5 Fetch translations from Crowdin 2022-02-20 00:10:13 +00:00
Autechre 78b25b20dd Revert "Update zlib.h (#13641)" (#13642)
This reverts commit 5a3cd8671e.
2022-02-19 21:56:52 +01:00
Philippe Simons 5a3cd8671e Update zlib.h (#13641)
fix compilation of uncompr.c
2022-02-19 21:11:59 +01:00
twinaphex d2ab5d05ee Remove GONG remnants 2022-02-19 05:33:32 +01:00
github-actions 8373ef1a61 Fetch translations from Crowdin 2022-02-19 00:09:36 +00:00
Colin Kinloch b2527b43e8 (Wayland) Show window early to get screen info (#13591)
* (Wayland) Show window early to get screen info

* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic

* Fallback to shm_open when memfd_create is not supported
2022-02-18 19:59:41 +01:00
Keith BowesandMaxime Gauduin bbfcecfab0 Fix building against FFmpeg 5.0 (#13611)
Co-authored-by: Maxime Gauduin <[email protected]>
2022-02-18 18:40:54 +01:00
Rafael Toledo 03edf4f6a9 [Android] Include adaptative launcher icons (#13423) 2022-02-18 18:40:18 +01:00
Cthulhu-throwaway b0928cd0f8 [Netplay] Disable savestates on stateless mode (#13634)
Stateless mode is currently not working correctly and still using savestates.
2022-02-18 17:08:18 +01:00
Vladimir Serbinenko f0d8af0d34 Remove gong now that it has been successfully extracted into a standalone core (#13637) 2022-02-18 17:03:35 +01:00
github-actions 80e7e1983a Fetch translations from Crowdin 2022-02-18 00:08:46 +00:00
Mats e76da47b31 Fix base path when compiling with unix cwd (#13631) 2022-02-17 04:59:37 +01:00
github-actions 932c9b9926 Fetch translations from Crowdin 2022-02-17 00:07:37 +00:00
Jamiras c816cd2b61 change default for cheevos_richpresence_enable back to true (#13629) 2022-02-16 16:16:55 +01:00
MrHuu a7b7472c34 (RGUI) Add dynamic theme (#13612)
* (RGUI) Add dynamic theme

* (RGUI) Cleanup

* (RGUI) Apply jdgleaver's dynamic theme patch
2022-02-16 15:56:10 +01:00
github-actions 1fe70da946 Fetch translations from Crowdin 2022-02-16 00:07:48 +00:00
Braden Farmer 5bacf1e9be [Android] Populate external storage devices inside the file browser on Android 11+ devices (#13615)
[Android] Populate external storage devices inside the file browser on Android 11+ devices
2022-02-15 16:11:39 +01:00
Jamiras 5d3654ddbb (cheevos) support for identifying Dreamcast CHDs (#13628)
* support for identifying Dreamcast CHDs

* fix copy/paste error
2022-02-15 15:09:43 +01:00
github-actions 0e22b1ec73 Fetch translations from Crowdin 2022-02-15 00:08:15 +00:00
Michael Burgardt b8242601ec Fix localisations (#13622)
* Fix translations with messed-up string placement

* Fix Hebrew and Persian text display

Hebrew is now displayed properly as right-to-left.
Miscellaneous whitespaces, like the zero width non-joiner used in Persian, no longer break right-to-left texts.
2022-02-14 02:43:55 +01:00
github-actions 538b58aa7a Fetch translations from Crowdin 2022-02-14 00:07:43 +00:00
Jamiras 600a3365ea update to rcheevos 10.3.2 (#13621) 2022-02-13 21:40:16 +01:00
github-actions 19a1dbbc85 Fetch translations from Crowdin 2022-02-13 00:09:26 +00:00
github-actions 9ec7cecb93 Fetch translations from Crowdin 2022-02-12 00:07:40 +00:00
Salvador 8093f4595c Gba filter (#13613)
New GBA filter Upscale_240x160-320x240
2022-02-10 12:40:00 +01:00
Jamiras a576ee49db more description message for missing RetroAchievements credentials (#13617) 2022-02-09 17:18:03 +01:00
github-actions e71e895ad6 Fetch translations from Crowdin 2022-02-08 00:08:31 +00:00
TheRhysWyrill c97b40e900 Icon Optimization For Xbox/UWP Port (#13608)
* Asset Optimization

* Asset Optimization
2022-02-07 23:55:26 +01:00
jdgleaver ab8e8359a6 Fix segfault when launching content with cores that do not have serialized savestate support when rewind and cheevos hardcore mode are enabled (#13607) 2022-02-07 23:52:25 +01:00
github-actions 5d3ebd0ece Fetch translations from Crowdin 2022-02-07 00:07:46 +00:00
Michael Burgardt 504a6b9670 Fix Polish translation (#13601) 2022-02-06 04:40:08 +01:00
github-actions df1f7bffb9 Fetch translations from Crowdin 2022-02-06 00:09:13 +00:00
dbaronicaandDomagoj Baronica 2febc16e2e (UWP) - Implemented activation/starting of retroarch using URI activa… (#13563)
* (UWP) - Implemented activation/starting of retroarch using URI activation.

* Removed try-catch blocks, refactored argument parsing, ignore driver reset if content starting directly from arguments

Co-authored-by: Domagoj Baronica <[email protected]>
2022-02-05 12:46:42 +01:00
github-actions 5bc2d42cdc Fetch translations from Crowdin 2022-02-05 00:09:09 +00:00
jdgleaver 412c79862c (Qt) Fix crash when loading content via desktop menu while content is already running (#13595) 2022-02-05 00:26:10 +01:00
jdgleaver e541dd5ab1 Disable run-ahead and rewind based on save state support level defined in core info files (#13594)
* Disable run-ahead based on save state support level defined in core info files

* Disable rewind based on save state support level defined in core info files
2022-02-05 00:25:33 +01:00
Sou Bunnbu 763fcd8267 unix, win32: Allow set the default libretro_directory via environment variable (#12040) 2022-02-04 17:40:57 +01:00
github-actions d43b99cbac Fetch translations from Crowdin 2022-02-03 00:10:22 +00:00
TheRhysWyrill 37a91e1be5 Updated UWP Icons/Splash Screens (#13592)
* Updated UWP Icons

* Updated UWP Icons
2022-02-02 19:07:25 +01:00
jdgleaver 42e03cae83 Disable save states based on save state support level defined in core info files (#13562) 2022-02-02 16:49:53 +01:00
github-actions 6f7332c8fa Fetch translations from Crowdin 2022-02-02 00:09:36 +00:00
Vladimir Serbinenko 80cf91417c Enable 7zip on emscripten (#13533)
This makes it more in-line with other static platforms
2022-02-01 13:53:03 +01:00
Autechre b45a192416 Revert "(Wayland) Show window early to get screen info (#13582)" (#13590)
This reverts commit 4bb2c14293.
2022-02-01 12:47:53 +01:00
Colin Kinloch 4bb2c14293 (Wayland) Show window early to get screen info (#13582)
* Report current monitor size on initial get_video_size call

* Fullscreen to monitor selected in settings

* Fullscreen on current monitor when setting is set to automatic
2022-02-01 10:30:34 +01:00
Jahed 592f69ec69 MIYOO: Support battery level (#13585)
Currently when using RGUI on MiyooCFW (on a Powkiddy V90), despite enabling "Show Battery Level", nothing is shown. This change fixes that by comparing the correct voltage_now file.

There are no min/max files on the device so they're hardcoded similar to GMenu2X's indicator. Results are based on value distribution while running a game at max load.

GMenu2X battery level logic:
https://github.com/MiyooCFW/gmenunx/blob/7d51f8c22be22066fbaea671a4baf6d0d0ff5c3f/src/gmenu2x.cpp#L2587-L2598

Miyoo battery properties:
https://github.com/MiyooCFW/kernel/blob/f60025f03429ceb3771e5392a7d85c6f1780a42a/drivers/power/supply/miyoo-battery.c#L62-L72

RGUI battery level update:
https://www.libretro.com/index.php/retroarch-1-7-7-ui-updates/
2022-02-01 10:30:11 +01:00
Tony a106dedeb6 Fix default core on 'Add to Favorites' (#13587) 2022-02-01 10:29:56 +01:00
Jamiras cdc5e33953 support chd inside m3u (#13586) 2022-02-01 10:29:44 +01:00
github-actions f8c3c76e18 Fetch translations from Crowdin 2022-02-01 00:08:10 +00:00
Jamiras e301fffae3 prevent occasional infinite wait loading multi-disc game from secondary disc (#13561) 2022-01-31 19:28:31 +01:00
Tony 6d5d2e722d Logging cleanups (#13579) 2022-01-31 18:05:23 +01:00
Jamiras c092fa33e1 add mastery placard (#13575) 2022-01-31 16:33:23 +01:00
Víctor "IlDucci 900675ad23 [Typo fixing] Removing unneeded space before colons. (#13577) 2022-01-31 16:32:47 +01:00
jdgleaver a953b27614 Rework optional fast-forward frame skipping: Drop frames based on frame timing (#13578) 2022-01-31 16:32:17 +01:00
github-actions 6aa89b3723 Fetch translations from Crowdin 2022-01-31 00:07:42 +00:00
Vladimir Serbinenko 17ccfe4004 Support GL1 on osx-ppc (#13569)
* Fix handling of big-endianness in gl1

* Enable gl1 on osx-ppc

* Force gl1 on apple if gfx supports only gl1

* Backport gl2 apple workaround to gl1

* Fix big-endianness handling in widgets
2022-01-30 09:30:39 +01:00
Keith Bowes cce04bab70 Remove references to removed features (#13564) 2022-01-30 09:29:43 +01:00
Giovanni Cascione ffbbdbd256 fbdev: fix segfault on video thread switch and exit from hw_ctx cores (#13571) 2022-01-30 09:24:33 +01:00
github-actions 84052ee7e1 Fetch translations from Crowdin 2022-01-30 00:07:54 +00:00
Jamiras e1352060b5 stop load process if unable to retrieve achievement data (#13565) 2022-01-29 19:57:23 +01:00
Colin Kinloch a431760829 (Wayland) Release keys and mouse buttons on lost focus (#13567) 2022-01-29 19:57:06 +01:00
Colin Kinloch 5bd7433ac4 (Vulkan/GL) goto error without HAVE_EGL (#13568) 2022-01-29 19:56:49 +01:00
twinaphex 60eaf14afc C89_BUILDFIX 2022-01-29 10:55:31 +01:00
Dystopian 0afdb2a0cf Improve udev logging (#13549) 2022-01-29 10:57:38 +01:00
Tony 86cced8eab Fix frameskipping with duped frames (#13560) 2022-01-29 10:57:01 +01:00
github-actions dbe0252db4 Fetch translations from Crowdin 2022-01-29 00:07:53 +00:00
github-actions 4132176ece Fetch translations from Crowdin 2022-01-28 00:11:55 +00:00
Cthulhu-throwaway cd74221d33 [Networking] GetBestRoute refactor (#13553)
Refactor to support UWP.
2022-01-27 11:38:31 +01:00
Tony d9a4dc52c0 Increase maximum fast-forward ratio (#13552) 2022-01-27 11:37:09 +01:00
github-actions 8511152738 Fetch translations from Crowdin 2022-01-27 00:09:45 +00:00
Tony 84f558db0b Add optional frame skipping when fast-forwarding (#13550) 2022-01-26 18:30:33 +01:00
jdgleaver fa213a724f Fix crash when cores using RETRO_ENVIRONMENT_SET_AUDIO_CALLBACK return false from retro_load_game() (#13547) 2022-01-26 18:30:07 +01:00
github-actions dfcbde86f7 Fetch translations from Crowdin 2022-01-26 00:09:04 +00:00
Jamiras 2ecb253ed4 (cheevos) upgrade to rcheevos 10.3 (#13546)
* upgrade to rcheevos 10.3

* use rcheevos cdreader for gdi/cue processing

* update widgets when loading state
2022-01-25 04:44:53 +01:00
Francisco Javier Trujillo Mata 3a67162ae2 Fix PS2 raboot name (#13543) 2022-01-25 04:19:18 +01:00
notaz 5f2ed6c85a VITA: don't fail if vm_memblock can't be allocated (#13545)
Failing here is catastrophic because we get no heap, the whole thing
just crashes and leaves nothing in the logs. vm_memblock is not even
used by RetroArch, it's just used by cores with dynarecs, so let the
cores themselves deal with problems if they arise.
2022-01-25 04:19:00 +01:00
Francisco Javier Trujillo Mata 86b47b4859 [PSP] Update Retroarch to latest PSPDev status (#13544)
* Added newlib changes

* Add action to launch PPSSPP simulator

* Remove legacy config for the stack and heap

* Add pthread

* Simplify kernel_functions and improve references to HAVE_KERNEL_PRX

* Add some flags

* Improve audio init/deinit

* Improve exit by clicking home

* Add CI for PSP1

* Update PSP.yml
2022-01-25 03:50:18 +01:00
github-actions 17362e3692 Fetch translations from Crowdin 2022-01-25 00:07:58 +00:00
jdgleaver 6ee3c14779 Add 'Core System Files Downloader' entry to the Online Updater (#13524) 2022-01-24 16:41:29 +01:00
Piotr Dobrowolski a612e7f7cc sdl_gl_ctx: fix focus detection on webOS (#13526) 2022-01-24 16:31:35 +01:00
Ryan Kuba 6ae1270e5c remove test for standard mapping in controller detection (#13528) 2022-01-24 16:31:03 +01:00
Vladimir Serbinenko 2c289a6212 Add FreeChaf to emscripten (#13529) 2022-01-24 16:30:35 +01:00
Keith Bowes 38e74ee3cf Restores mouse-grab toggling in Wayland. (#13537)
* Fixes mouse-grab toggling in Wayland.

Fixes #13536

* Indicate that input_wl_grab_mouse is a necessary function.

It might prevent it from being removed again in future cleanups.
2022-01-24 16:22:21 +01:00
Vladimir Serbinenko 4e24fb3d01 Add osx-ppc compilation for frontend (#13532)
* Fix old osx condition

Current code assumes that osx < 10.12 is equivalent to ppc osx. It's not
true as Leopard x86 is still < 10.12 but not ppc. As xcode compiles fat
binaries it includes osx x86 and compilation fails.

* Disable crtswitchres when no c++11 is available

Crtswitchres altually needs c++11. Since it's not that important to make
it compatible with lower c++, just disable if no c++11 is available

* Don't use firstObject on old Mac OS X.

It was introduced in 10.6, so on old ones just implement it ourselves

* Compile osx-ppc frontend

* osx-ppc: Build a fat binary

On 10.6 i386 xcode apparently refuses to build a pure ppc.
Settle for a fat binary.
2022-01-24 16:22:07 +01:00
github-actions 948ad76b14 Fetch translations from Crowdin 2022-01-24 00:07:57 +00:00
github-actions 245101b1a1 Fetch translations from Crowdin 2022-01-23 00:08:33 +00:00
github-actions e2848ad0d5 Fetch translations from Crowdin 2022-01-22 00:07:03 +00:00
twinaphex 688e00a25b Update CHANGES.md 2022-01-21 04:45:53 +01:00
Tony 49d3a947b8 (D3D10/11) Add vsync swap interval (#13521) 2022-01-21 04:35:22 +01:00
github-actions 5f6fc20360 Fetch translations from Crowdin 2022-01-21 00:10:19 +00:00
Cthulhu-throwaway b71be7efd2 (Netplay/LAN Discovery) Disable GetBestRoute for UWP (#13518) 2022-01-20 14:52:11 +01:00
twinaphex 5241d3e5d6 Cleanups 2022-01-20 06:09:43 +01:00
Cthulhu-throwaway c9d66eed46 (UPnP) Disable GetBestRoute for UWP (#13517)
* (UPnP) Disable GetBestRoute for the XBOX

* Macro branching to _WIN32_WINNT_WINXP

* Macro branching to __WINRT__
2022-01-20 06:12:12 +01:00
Gabriel Morazán f5a1af00eb (UWP) Changes to Build Files (#13516)
* (UWP) Bump version Number

* (UWP) Bump version to 1.10.0

* Update TemporaryKey

* Update TemporaryTicket
2022-01-20 05:44:27 +01:00
github-actions a50bf67386 Fetch translations from Crowdin 2022-01-20 00:08:30 +00:00
twinaphex d4dbd677db (Dynamic dummy) Prevent recursive control path 2022-01-20 00:01:07 +01:00
twinaphex a14dcfa3ba Update CHANGES.md 2022-01-19 19:10:56 +01:00
Michael Burgardt 311fec15d9 Add Indonesian, Swedish and Ukrainian language options (#13490)
* Add Indonesian, Swedish and Ukrainian language options

* Enable Indonesian and Swedish localisations for RGUI
2022-01-19 19:12:55 +01:00
twinaphex cc756e4126 Silence some warnings 2022-01-19 19:08:22 +01:00
twinaphex bacae58ea5 Bump up to version 1.10.0 2022-01-19 18:53:15 +01:00
github-actions 51ba13035d Fetch translations from Crowdin 2022-01-19 00:07:26 +00:00
jdgleaver 58287ad666 (3DS) Disable CHD support (#13512) 2022-01-18 19:13:49 +01:00
Cthulhu-throwaway c50087efdc (UPnP) Minor refactor (#13510)
Don't clear up the request at natt_close_port.
2022-01-18 13:03:32 +01:00
Vladimir Serbinenko 979428649a VITA: Fix Nat-t compilation 2022-01-18 11:23:27 +01:00
github-actions 650789a570 Fetch translations from Crowdin 2022-01-18 00:07:53 +00:00
Vladimir Serbinenko 0e77013f2f CTR: Add jaxe and wasm4 (#13508) 2022-01-17 21:43:55 +01:00
Dystopian d6fda5044f Fix flags when CC returns triple version (#13509) 2022-01-17 21:43:49 +01:00
Vladimir Serbinenko 2ca982691b VITA: Fix early crash (#13507) 2022-01-17 20:38:04 +01:00
Vincent Pelletier d8d21e9947 Use mapped controller name in setting_action_ok_bind_all_save_autoconfig (#13500)
Consistently with input_config_get_device_name use in
get_string_representation_split_joycon.
Fixes a bug where saved autoconfig would not match the current device, but
an unpredictable other device in the system.
2022-01-17 13:47:25 +01:00
Dystopian 87ce001a4a Detach HAVE_COMMAND option from HAVE_STDIN_CMD (#13502) 2022-01-17 13:46:50 +01:00
Cthulhu-throwaway 1a7e8e6628 (UPnP) Refactor (#13503)
COMMON: The common library can now be used independently by any number of features.
COMMON: The common library no longer restricts HAVE_SOCKET_LEGACY.
Netplay Task: Network interface scoring changed from byte-level to bit-level.
2022-01-17 13:46:03 +01:00
github-actions eaf32daf25 Fetch translations from Crowdin 2022-01-17 00:08:08 +00:00
github-actions 6d6eca7a9f Fetch translations from Crowdin 2022-01-16 00:08:20 +00:00
github-actions d3b38f45fd Fetch translations from Crowdin 2022-01-15 00:07:42 +00:00
jdgleaver c4a676d756 (3DS) Add a5200 assets (#13492) 2022-01-14 15:30:12 +01:00
Giovanni Cascione f93548ab56 mali_fbdev fix for fps drop after egl_destroy (#13494)
Currently each time a screen resolution or setting change occurs, fbdev_destroy, fbdev_init and fbdev_set_mode are called in sequence, trying to destroy context and surface (though context pointer seems to remain unchanged) and create again both of them.
However it seems something is wrong with egl_destroy, as after the call fps drops from 60 to 33fps in GUI with huge performance impact, at least with libmali.
Philosophy is changed with this commit to avoid destroying and creating context and surface each time (creation only occurs in fbdev_init and egl_destroy is called only if retroarch is shutting down).
As a minor modification, framebuffer is resetted to 0 on retroarch shutdown to avoid any chance of freezed screen effect.
2022-01-14 15:30:04 +01:00
github-actions aca2b9675f Fetch translations from Crowdin 2022-01-14 00:08:28 +00:00
jdgleaver 209b3b76b3 Restore missing 'Cache Core Info Files' menu entry (#13487) 2022-01-13 19:59:19 +01:00
twinaphex 4fa1443c71 New default setting for cheevos_richpresence_enable 2022-01-13 17:49:21 +01:00
MrHuu a5c79e4c86 (3DS) Enable CHD support / Disable richpresence by default (#13486) 2022-01-13 17:51:38 +01:00
Cthulhu-throwaway 0c0d19e3f1 (Netplay) Fix dummy notification
No longer shows a netplay initialization failed notification when netplay is not enabled.
2022-01-13 01:49:51 +01:00
github-actions 4331065cc0 Fetch translations from Crowdin 2022-01-13 00:09:41 +00:00
Vladimir Serbinenko c9a72fadab EMSCRIPTEN: Add wasm4 and jaxe (#13483) 2022-01-12 22:35:10 +01:00
Cthulhu-throwaway f8da64d740 (UPnP) Accept IGD v2 service types (#13482) 2022-01-12 15:30:16 +01:00
Dystopian 2095fc53f8 Fix webOS build and run (#13480) 2022-01-12 07:12:34 +01:00
github-actions f4831809f7 Fetch translations from Crowdin 2022-01-12 00:10:11 +00:00
Vladimir Serbinenko 2f130a23e4 Allow loading files from archive subdirectory (#13443)
* Allow loading files from archive subdirectory

Common example is "games.7z#game1/version1.ext" current code assumes that
everything that is before last slash is part of filesystem directory which
is false in this case.

* Fix listing of archive subdirectories

Currently file_archive_get_file_list_cb returns 0 on skipped entries.
It's wrong as calling convention for it is "0 means to stop iterating".
So on first extensionless file or an explicitly listed directory
further listing has stopped
2022-01-11 13:59:38 +01:00
Cthulhu-throwaway 4dda10b86d (Netplay) Disable netplay on init failure (#13479)
* (Netplay) Disable netplay on init failure

Make sure netplay is disabled and properly deinitialized after an initialization failure.

* missing comma
2022-01-11 13:50:09 +01:00
Jamiras 0a1ffcd4d5 reset hardcore default to enabled; show message when trying to load state in hardcore (#13471) 2022-01-11 13:48:05 +01:00
Cthulhu-throwaway 4cf1bcf70f (Netplay/UPnP) Delay lobby server announcing (#13473)
Delay the announcing in order to give UPnP's port forwarding more time.

Fix the remaining truncation warnings.
2022-01-11 08:48:59 +01:00
github-actions 310c43d7ad Fetch translations from Crowdin 2022-01-11 00:08:12 +00:00
Vladimir Serbinenko 0b205c2292 Add psl1ght compilation (#13472) 2022-01-10 18:25:36 +01:00
Cthulhu-throwaway fb2d600837 (Netplay/UPnP) Smart interface selection (#13470)
Find the most suitable address for UPnP by scoring interfaces on how close their address is to the device's address.
2022-01-10 15:52:15 +01:00
Colin Kinloch 3e3cf904ca (Vulkan) Double combined image sampler descriptor pool size (#13467) 2022-01-10 09:10:11 +01:00
MajorPainTheCactus ad4f6176ff Vulkan driver fixes for HDR (#13468)
* Fixed crash on boot with xmb and vulkan driver Fixed wrong blend state affecting the ribbon shader Fixed up C++ style comments with C style

* Fixed compilation issue - I made a last minute change and thought I had compiled it but obviously hadn't! No wonder it worked.
2022-01-10 06:26:02 +01:00
github-actions b3f3bf1e83 Fetch translations from Crowdin 2022-01-10 00:08:23 +00:00
Rob Loach aa642e5786 (Cheevos) By default, have Hardcore mode disabled (#13465) 2022-01-09 11:19:03 +01:00
Jamiras 176c2d1911 report Unknown Game instead of Not Logged In when no hash is generated (#13463) 2022-01-09 02:42:41 +01:00
github-actions 28f531647f Fetch translations from Crowdin 2022-01-09 00:08:35 +00:00
MajorPainTheCactus ddaf3bc6cf Revert default HDR settings as it broke the stock shader with HDR (#13448) 2022-01-08 13:41:34 +01:00
MajorPainTheCactus 1a228a4e78 Added HDR support to Vulkan driver (#13456) 2022-01-08 13:22:34 +01:00
Cthulhu-throwaway c2df109874 (Netplay) LAN addresses only for UPnP (#13461)
Some router devices might accept non-LAN addresses without raising an error.
2022-01-08 10:45:41 +01:00
Christopher Snowhill 87c5720988 (Mac) BaseConfig.xcconfig - Add SSE/NEON opts (#13453) 2022-01-08 04:21:58 +01:00
Christopher Snowhill b5504dda99 Implement sinc kaiser NEON function (#13452) 2022-01-08 04:21:51 +01:00
jdgleaver 1935d217d2 Enable 'short form' notation when specifying core path on the command line (-L, --libretro=FILE) (#13454) 2022-01-08 04:03:06 +01:00
github-actions 4ae67b9fa4 Fetch translations from Crowdin 2022-01-08 00:07:25 +00:00
Jean-André Santoni bb948e9b81 Merge pull request #11719 from pkos/master
(Database) Serial scanning for Gamecube/MegaCD/SegaCD/Saturn/PSX/PSP/Dreamcast/Wii
2022-01-08 01:39:25 +07:00
Tony 7ca3c314f8 Move 'Black Frame Insertion' under 'Synchronization' (#13457) 2022-01-07 17:30:21 +01:00
Tony 5b85339839 (Vulkan) Emulate mailbox only with vsync (#13460) 2022-01-07 17:08:24 +01:00
Tony b7d77e9484 (XMB) Optional vertical list item fade (#13455) 2022-01-07 08:46:49 +01:00
github-actions 483d1f2ac7 Fetch translations from Crowdin 2022-01-07 00:08:43 +00:00
crystalct 19d05db9ae PSL1GHT/PS3 build fix (#13446) 2022-01-06 08:21:14 +01:00
Giovanni Cascione f43b19db4f mali_fbdev: fix for yoffset>0 (screen freezing), setterm unavailable and refresh_rate division by 0 (#13450)
-In case yoffset is not set=0 by the driver (which seems to occur randomly on certain configurations), on next set_video_mode call screen freezes and cannot be updated. Condition to set yoffset to 0 if current value is >0 is added as fix.
-If setterm is not available, sh error occurs in the shell on gfx_ctx_mali_fbdev_destroy call. Condition based on setterm availability is added to avoid this.
-If pixclock from driver is not available (=0), divide by 0 occurs when trying to calculate refresh rate. Condition is added as a fix, if pixclock=0 refresh rate is set as 60.
2022-01-05 19:26:39 +01:00
github-actions d13f325216 Fetch translations from Crowdin 2022-01-05 00:08:04 +00:00
Michael Burgardt c28df9ccef Stop Crowdin Daily Workflow from activating with empty API key (#13440)
* Stop Crowdin Daily Workflow from activating with empty API key

* Make sure that the API key is always reset
2022-01-04 13:32:03 +01:00
Cthulhu-throwaway c29fd8e53a Menu setting fixes (#13439)
Fixes for some netplay settings that don't work well in the menu.
2022-01-04 13:21:53 +01:00
Rob Loach fb6dfd345f (Audio Mixer) audio_mix.c does not require stdio.h (#13441)
This change removes the inclusion of stdio.h as it's not needed in this file.
2022-01-04 13:21:45 +01:00
github-actions d4902b65bd Fetch translations from Crowdin 2022-01-04 00:07:56 +00:00
github-actions a427de28eb Fetch translations from Crowdin 2022-01-03 00:08:24 +00:00
github-actions 3c388b62d4 Fetch translations from Crowdin 2022-01-02 00:08:08 +00:00
pkos a192064403 (Database) Serial scanning for Gamecube/MegaCD/SegaCD/Saturn/PSX/PSP/Dreamcast/Wii 2021-12-31 21:35:16 -05:00
github-actions 76fd60b15e Fetch translations from Crowdin 2022-01-01 00:07:53 +00:00
Tony 940f7553fd Add delay + acceleration to volume hotkeys (#13434) 2021-12-31 18:17:32 +01:00
cedorgandcborg be05a7e194 Fix buffer overflow. (#13436)
retroarch sometimes crashes at startup when loading asset textures with gl1 driver.

Co-authored-by: cborg <[email protected]>
2021-12-31 18:17:02 +01:00
github-actions 31342ea18f Fetch translations from Crowdin 2021-12-31 00:07:41 +00:00
Tony 17f63e6e39 (XMB+Ozone) Category + History/Favorites icons (#13433)
* (XMB+Ozone) Icons for matching core option categories

* (XMB+Ozone) Playlist content icon option for history/favorites
2021-12-30 20:14:57 +01:00
Cthulhu-throwaway d017ce7b03 Filter out non-connectable rooms (#13429)
Add an option for filtering out non-connectable netplay rooms.
2021-12-30 08:33:54 +01:00
github-actions e161af4826 Fetch translations from Crowdin 2021-12-30 00:07:38 +00:00
github-actions ee1d9f5d1b Fetch translations from Crowdin 2021-12-29 00:07:49 +00:00
github-actions 916a3fd157 Fetch translations from Crowdin 2021-12-28 00:07:38 +00:00
twinaphex 18dae9ce73 remove unused variables 2021-12-27 19:57:32 +01:00
github-actions a746030901 Fetch translations from Crowdin 2021-12-27 00:08:35 +00:00
Autechre 68713b46b0 Revert "Netplay clean-up (#13421)" (#13422)
This reverts commit 5efd2a64a4.
2021-12-26 16:54:19 +01:00
Cthulhu-throwaway 5efd2a64a4 Netplay clean-up (#13421) 2021-12-26 16:30:38 +01:00
Cthulhu-throwaway 9579810579 Build fix for --disable-menu (#13419) 2021-12-26 15:18:57 +01:00
be650a790c Add option for showing the overlay behind the menu (#13360)
* Add option for showing the overlay behind the menu

This commit lays the groundwork for this option. Support for this option
in the video drivers themselves is going to be added in later commits.

* gl1: Add overlay behind menu support

* gl2: Add overlay behind menu support

* gl3: Add overlay behind menu support

* vulkan: Add overlay behind menu support

* ctr: Add overlay behind menu support

* d3d9: Add overlay behind menu support

* d3d10: Add overlay behind menu support

* d3d11: Add overlay behind menu support

* d3d12: Add overlay behind menu support

* CHANGES.md: overlay behind menu

Co-authored-by: MrHuu <[email protected]>
Co-authored-by: Tony <[email protected]>
2021-12-26 04:56:44 +01:00
Colin Kinloch 22df09885e (Wayland) Use any display for initial metrics (#13417) 2021-12-26 04:53:57 +01:00
Cthulhu-throwaway 26132a2330 Netplay and NAT struct improvements (#13416)
Reordered netplay and NAT structs to follow the coding guidelines more closely.

Moved part of the chat struct out of the program's image and into the heap.
2021-12-25 13:42:22 +01:00
Aleksey Samoilov f17deb90c7 [Wayland] Fix toplevel close (#13415) 2021-12-25 11:19:27 +01:00
Colin Kinloch 0168fe0303 (Wayland) Ignore mouse clicks on window decoration (#13412) 2021-12-25 04:08:22 +01:00
Cthulhu-throwaway 9e208198f2 Endianness fix for netplay_is_lan_address (#13413) 2021-12-25 04:07:55 +01:00
Cthulhu-throwaway 98bed89d6f Netplay custom relay server to use default port (#13411)
Allow the custom server to use the default port if a port was not provided.
2021-12-25 02:30:33 +01:00
github-actions d056a989ee Fetch translations from Crowdin 2021-12-25 00:06:59 +00:00
twinaphex 33cc889f7f (HDR) Hide HDR settings unless HDR is enabled 2021-12-24 21:15:08 +01:00
Cthulhu-throwaway 6a100272a8 Netplay spectator notification fix (#13409)
Fix double notification when the host switches to spectator.
2021-12-24 16:42:16 +01:00
twinaphex 689057a9b2 Fix iOS/CocoaTouch builds 2021-12-24 15:42:00 +01:00
Cthulhu-throwaway 736ab4c964 MSVC 2005 build fix (#13408) 2021-12-24 14:58:18 +01:00
tunip3andTunip3 a28e226ef4 Make resolution switching automatic and fix angle output issues [UWP/XBOX] (#13406)
* force angle to render at 1080p regardless of screensize as the output is 1080p regardless of screensize.
This fixes an issue where at 4k any angle output would be zoomed into a corner

* set resolution based on display resolution (auto 4k)

* set driver to d3d11 if booting with opengl

* reset width and height of output on boot to match display

Co-authored-by: Tunip3 <[email protected]>
2021-12-24 14:34:30 +01:00
twinaphex e1d144e2b8 (Wayland) Style nits 2021-12-24 14:29:12 +01:00
Colin Kinloch f0392474f2 (Wayland) Add libdecor for client side decoration (#13397) 2021-12-24 14:20:45 +01:00
Cthulhu-throwaway b67b93ebfe Enable GetBestRoute for MSVC 2005 (#13407) 2021-12-24 14:15:20 +01:00
twinaphex 43d0fa6248 remove unused variable 2021-12-24 12:51:23 +01:00
Cthulhu-throwaway b696903162 UPnP fix for another specific router (#13404)
* UPnP fix for another specific router

Fix UPnP for a specific router device.

Also fix net_http not writing the host's port within the HTTP request.

* Quick edit
2021-12-24 11:56:51 +01:00
twinaphex 393e42a497 (Wayland) Buildfix 2021-12-24 05:25:30 +01:00
Colin Kinloch c48d533950 (Wayland) Add scroll wheel support (#13398) 2021-12-24 03:42:33 +01:00
Colin Kinloch 1afbe4a326 (Wayland) Use checked sizes in EGL resize (#13394) 2021-12-24 03:27:07 +01:00
Colin Kinloch 7d52d43667 [Wayland] Fix window title update (#13396) 2021-12-24 03:14:20 +01:00
github-actions c0ed1e3367 Fetch translations from Crowdin 2021-12-24 00:07:38 +00:00
Cthulhu-throwaway ec97c86756 Attempt to fix UPnP for some Windows devices (#13402)
Yet another attempt at it.
2021-12-23 23:52:01 +01:00
Cthulhu-throwaway c6369b7861 MSVC 2005 Build Fix (#13401) 2021-12-23 22:08:13 +01:00
Cthulhu-throwaway c4049b9597 NAT and netplay Fixes (#13400)
* NAT and netplay Fixes

Fix a crash when announcing your room to the internet without being in a tunnel.

Fix improper interface for UPnP for some Windows devices.

* Final edits
2021-12-23 21:28:30 +01:00
Jamiras e0ad9f7e26 fix netplay UPNP binding for specific router behavior (#13399)
* fix netplay UPNP binding for specific router behavior

* use ISSPACE macro
2021-12-23 19:30:35 +01:00
Cthulhu-throwaway c752f9b0de Custom relay server support (#13395)
* Custom relay server support

Add support for custom user-ran relay servers.

* snprintf NULL fix
2021-12-23 13:54:52 +01:00
github-actions f6291adf01 Fetch translations from Crowdin 2021-12-23 00:07:28 +00:00
Cthulhu-throwaway b9041995f0 Add asian relay server (#13393)
Replace the canadian server with an asian one.
2021-12-22 16:33:41 +01:00
tunip3andTunip3 fb6bf6023a Move roms copied to localstate to a dedicated dir and clear on start up [XBOX/UWP] (#13392)
* make roms copy to a specific cache dir in the localstate folder when its copied

* auto delete vfs cache dir on start up

Co-authored-by: Tunip3 <[email protected]>
2021-12-22 12:55:33 +01:00
Cthulhu-throwaway eff6f41a38 Netplay protocol macro (#13391)
Wrap protocol checks inside of a guard macro.
2021-12-22 03:05:35 +01:00
MajorPainTheCactus 9151326b73 Added support for HDR shaders - if we detect a shader that uses SLANG_FORMAT_A2B10G10R10_UNORM_PACK32 or SLANG_FORMAT_R16G16B16A16_SFLOAT as the format for the last render target in the shader chain AND hdr is switched on then this disables the internal HDR shader and allows the shader chain to define an inverse tonemapper and hdr10 shader. The first use of this is for my hdr shader crt\crt-sony-pvm-4k-hdr.slangp - submitted seperately (#13390) 2021-12-22 02:17:17 +01:00
github-actions b21f3964b6 Fetch translations from Crowdin 2021-12-22 00:07:46 +00:00
Tony 9da43ad34e (RGUI) Add Finnish to supported languages (#13389) 2021-12-21 21:15:26 +01:00
Jamiras 7ad71a4a05 fix memory map conversion (#13386) 2021-12-21 21:15:03 +01:00
twinaphex 07534e4a6d Fix relative path includes 2021-12-21 19:56:00 +01:00
Jamiras 3d84a9960e (cheevos) check netplay status when unlocking achievements (#13379)
* check netplay status when unlocking achievements instead of permanently disabling them in spectate mode

* fix c89 build

* add RARCH_NETPLAY_CTL_IS_SPECTATING
2021-12-21 15:58:42 +01:00
Cthulhu-throwaway 966335e367 Smaller Netplay Changes (#13387)
Lobby Viewer: Filter out rooms that are not running RetroArch
Lobby Viewer: Display a non-connectable tag to non-connectable rooms.
Host: Display warning if we are announcing to the internet but our room isn't connectable from there.
2021-12-21 15:58:25 +01:00
github-actions 3f7d279acf Fetch translations from Crowdin 2021-12-21 00:08:24 +00:00
Nikos Chantziaras 0357b6c922 Add on-screen statistics toggle hotkey (#13381)
* Add on-screen statistics toggle hotkey

* CHANGES.md: Add technical statistics hotkey
2021-12-21 00:03:35 +01:00
Manuel Alfayate Corchete e5215d9e29 Fix incorrect file names for remap files when the content path doesn't have a preceding slash. (#13385) 2021-12-20 23:24:19 +01:00
Cthulhu-throwaway 77e202fbf7 Base64 cleanup
Base64 header cleanup.
2021-12-20 14:54:41 +01:00
Cthulhu-throwaway 568a30380b Buildfix for some platforms
Buildfix for some platforms that do not have HAVE_TRANSLATE defined aswell as platforms that define sockaddr_storage as sockaddr/sockaddr_in.
2021-12-20 14:26:50 +01:00
Cthulhu-throwaway cae793e39f Update netplay readme (#13380)
Fixes typos, removes outdated info and adds new commands for protocol 6.
2021-12-20 14:15:52 +01:00
github-actions 58b306d651 Fetch translations from Crowdin 2021-12-20 00:08:24 +00:00
Cthulhu-throwaway cda66d09c3 Netplay Stuff - Addendum (#13378)
Prevents long-term pausing from clients dishonoring allow pausing.

Missing crediting.
2021-12-19 20:43:59 +01:00
Cthulhu-throwaway 690c802921 Netplay Stuff (#13375)
* Netplay Stuff

## PROTOCOL FALLBACK
In order to support older clients a protocol fallback system was introduced.
The host will no longer send its header automatically after a TCP connection is established, instead, it awaits for the client to send his before determining which protocol this connection is going to operate on.
Netplay has now two protocols, a low protocol and a high protocol; the low protocol is the minimum protocol it supports, while the high protocol is the highest protocol it can operate on.
To fully support older clients, a hack was necessary: sending the high protocol in the unused client's header salt field, while keeping the protocol field to the low protocol. Without this hack we would only be able to support older clients if a newer client was the host.
Any future system can make use of this system by checking connection->netplay_protocol, which is available for both the client and host.

## NETPLAY CHAT
Starting with protocol 6, netplay chat is available through the new NETPLAY_CMD_PLAYER_CHAT command.
Limitations of the command code, which causes a disconnection on unknown commands, makes this system not possible on protocol 5.
Protocol 5 connections can neither send nor receive chat, but other netplay operations are unaffected.
Clients send chat as a string to the server, and it's the server's sole responsability to relay chat messages.
As of now, sending chat uses RetroArch's input menu, while the display of on-screen chat uses a widget overlay and RetroArch's notifications as a fallback.
If a new overlay and/or input system is desired, no backwards compatibility changes need to be made.
Only clients in playing mode (as opposed to spectating mode) can send and receive chat.

## SETTINGS SHARING
Some settings are better used when both host and clients share the same configuration.
As of protocol 6, the following settings will be shared from host to clients (without altering a client's configuration file): input latency frames and allow pausing.

## NETPLAY TUNNEL/MITM
With the current MITM system being defunct (at least as of 1.9.X), a new system was in order to solve most if not all of the problems with the current system.
This new system uses a tunneling approach, which is similar to most VPN and tunneling services around.

Tunnel commands:
RATS[unique id] (RetroArch Tunnel Session) - 16 bytes -> When this command is sent with a zeroed unique id, the tunnel server interprets this as a netplay host wanting to create a new session, in this case, the same command is returned to the host, but now with its unique session id. When a client needs to connect to a host, this command is sent with the unique session id of the host, causing the tunnel server to send a RATL command to the host.
RATL[unique id] (RetroArch Tunnel Link) - 16 bytes -> The tunnel server sends this command to the host when a client wants to connect to the host. Once the host receives this command, it establishes a new connection to the tunnel server, sending this command together with the client's unique id through this new connection, causing the tunnel server to link this connection to the connection of the client.
RATP (RetroArch Tunnel Ping) - 4 bytes -> The tunnel server sends this command to verify that the host, whom the session belongs to, is still around. The host replies with the same command. A session is closed if the tunnel server can not verify that the host is alive.

Operations:
Host -> Instead of listening and accepting connections, it connects to the tunnel server, requests a new session and then monitor this connection for new linking requests. Once a request is received, it establishes a new connection to the tunnel server for linking with a client. The tunnel server's address and port are obtained by querying the lobby server. The host will publish its session id together with the rest of its info to the lobby server.
Client -> It connects to the tunnel server and then sends the session id of the host it wants to connect to. A host's session id is obtained from the json data sent by the lobby server.

Improvements (from current MITM system):
No longer a risk of TCP port exhaustion; we only use one port now at the tunnel server.
Very little cpu usage. About 95% net I/O bound now.
Future backwards compatible with any and all changes to netplay as it no longer runs any netplay logic at MITM servers.
No longer operates the host in client mode, which was a source of many of the current problems.
Cleaner and more maintainable system and code.

Notable functions:
netplay_mitm_query -> Grabs the tunnel's address and port from the lobby server.
init_tcp_socket -> Handles the creation and operation mode of the TCP socket based on whether it's host, host+MITM or client.
handle_mitm_connection -> Creates and completes linking connections and replies to ping commands (only 1 of each per call to not affect performance).

## MISC
Ping Limiter: If a client's estimated latency to the server is higher than this value, connection will be dropped just before finishing the netplay handshake.
Ping Counter: A ping counter (similar to the FPS one) can be shown in the bottom right corner of the screen, if you are connected to a host.
LAN Discovery: Refactored and moved to its own "Refresh Netplay LAN List" button.

## FIXES
Many minor fixes to the current netplay implementation are also included.

* Remove NETPLAY_TEST_BUILD
2021-12-19 16:58:01 +01:00
github-actions b7c14f61bc Fetch translations from Crowdin 2021-12-19 00:08:38 +00:00
arpruss e5e6f343ac convert abs mouse from screen to viewport coordinates; fix relative m… (#13258)
* convert abs mouse from screen to viewport coordinates; fix relative mouse code to work in screen mode

* C89 compatibility

* revert accidental include
2021-12-18 17:52:27 +01:00
Tony 698ab4729a Vulkan max swapchain images option adjustments (#13374) 2021-12-18 17:45:32 +01:00
github-actions 7049c6c204 Fetch translations from Crowdin 2021-12-18 00:07:30 +00:00
Tony 8cc423e036 Logging cleanups (#13370) 2021-12-17 18:04:24 +01:00
Tony 6ee92d8583 Stop logging fps statistics twice on quit (#13369) 2021-12-17 16:06:15 +01:00
Tony 2c7d2bcc18 Log font rendering backend only once (#13371) 2021-12-17 16:05:32 +01:00
tunip3andTunip3 6c123dd078 Mitigate need for vfs cores on ntfs drives [UWP/XBOX] (#13368)
* make check for standard io by access rather than the just assuming based on path string

* add code to auto permissions so files can be accessed by non vfs cores
(no exfat or fat32 support yet)

* remove commit from macro because apparently it causes issues

Co-authored-by: Tunip3 <[email protected]>
2021-12-17 13:46:04 +01:00
Jamiras cd50a51f3e support for hashing buffered NDS ROMs (#13365) 2021-12-17 05:42:29 +01:00
Nikos Chantziaras 45f2f74d45 Add gamemode_enable to skeleton retroarch.cfg (#13366) 2021-12-17 05:42:13 +01:00
github-actions 4fa4260a16 Fetch translations from Crowdin 2021-12-17 00:07:15 +00:00
Tony 71836c1055 Add option for showing notifications only in menu (#13326) 2021-12-16 14:38:43 +01:00
github-actions aea8dad1ae Fetch translations from Crowdin 2021-12-16 00:07:19 +00:00
Francisco Javier Trujillo Mata 1cd0938cc3 [PS2] Improve Compilation (#13359)
* Allow parallel compilation in PS2

* Allow to compile with griffin or common compilation in PS2

* Enable dummy core to be used in other platforms

* Use threads in YML config

* Add the compilation to PS2 in GitHub Actions
2021-12-15 19:01:56 +01:00
jdgleaver 688c652673 [GameMode] Improve error handling (#13362) 2021-12-15 19:01:39 +01:00
github-actions 1582856b43 Fetch translations from Crowdin 2021-12-15 00:07:44 +00:00
Tilman M. Jaeschke 682bbab233 [New Feature] Load save states from command-line or playlist (#13354)
* load save states from command-line or playlist

* load save states from command-line or playlist

* removed some brackets
2021-12-14 14:08:06 +01:00
Nikos Chantziaras 430baf7c21 Add Linux GameMode support (#13339)
This can fix a lot of performance issues, like audio crackling and frame
time spikes. This requires the GameMode package to be installed. See:

https://github.com/FeralInteractive/gamemode

This commit adds a "Game Mode" bool option to the "Power
Management" and "Latency" settings sections, and it can be toggled
on/off without restarting RA.

The actual toggling of game mode happens in a new frontend platform
interface function. Perhaps this will become useful for other platforms
that provide some equivalent of Linux GameMode.

Since the GameMode ABI is fixed, and the API comes as a single,
header-only file with no actual deps, we simply bundle the header
(deps/feralgamemode/gamemode_client.h.) That way, all Linux builds will
have support for GameMode regardless of whether the GameMode development
package is installed or not.
2021-12-14 14:07:42 +01:00
Tilman M. Jaeschke fd8aa7a9cc change vscode settings to add a ruler at width 80 (#13358) 2021-12-14 14:07:25 +01:00
vaguerant 34892555ec Fix rotation on 3DS and Wii U (#13353)
* Fix rotation on 3DS
* Fix rotation on Wii U
2021-12-14 13:43:48 +01:00
github-actions 98431a15c0 Fetch translations from Crowdin 2021-12-14 00:07:35 +00:00
github-actions dd278dc068 Fetch translations from Crowdin 2021-12-13 00:07:31 +00:00
tunip3 62528a483f Fix roms over 4gb (approx) failing to load, improve copy times, fix scanning for playlists [UWP/XBOX] (#13348)
* Fix scanning for playlists

* Fix issues where games over 4gb (approx) would fail to load and also speed up loading times
2021-12-12 17:29:57 +01:00
github-actions 6870f0114e Fetch translations from Crowdin 2021-12-11 00:06:59 +00:00
github-actions cb8a589b77 Fetch translations from Crowdin 2021-12-10 00:09:35 +00:00
twinaphex baa51a5a91 (net_natt.c) Put IP_MULTICAST_TTL usage behind ifdef 2021-12-09 17:52:54 +01:00
twinaphex 9ec445ab40 Define IP_MULTICAST_TTL if not defined 2021-12-09 08:45:16 +01:00
Autechre 3b1a1ac8da Remove miniupnpc dependency (#13340)
* use custom libretro-common UPNP

* Remove miniupnpc
2021-12-09 05:52:42 +01:00
github-actions 39074fa55c Fetch translations from Crowdin 2021-12-09 00:07:36 +00:00
Jamiras 6bbee036f4 fix hung task whe badge doesn't exist (#13338) 2021-12-08 17:31:04 +01:00
github-actions b078d52689 Fetch translations from Crowdin 2021-12-07 00:07:37 +00:00
jdgleaver e3217b4a35 Remove frame limit from audio batch callback (#13333) 2021-12-06 18:11:46 +01:00
github-actions e954a46b1b Fetch translations from Crowdin 2021-12-06 00:07:29 +00:00
Autechre 06a2367008 Bump to version 1.9.14 (#13327)
* * Bump to version 1.9.14
* Don't have unused function when HAVE_CORE_INFO_CACHE is undefined

* Addition to CHANGES.md
2021-12-05 07:12:23 +01:00
twinaphex 6f60ee9b6e Network: Only use a single interface for UPnP 2021-12-05 03:47:48 +01:00
github-actions 9f01ebf0a9 Fetch translations from Crowdin 2021-12-05 00:07:43 +00:00
Autechre fbbe351f7d UPnP cleanups and refactorings (#13325) 2021-12-04 21:16:34 +01:00
twinaphex bfeffb2423 Fix local header path includes 2021-12-04 16:11:02 +01:00
Autechre a44f5bbf78 Fix UPNP port mapping failed error - switch to a permanent lease time, (#13324)
but request it to be removed when we do netplay_free
2021-12-04 15:45:29 +01:00
Tony 09880e92d2 Logging cleanups (#13320) 2021-12-04 14:21:12 +01:00
gbluesandNathan Strong bf9706395d Fix gamepad disconnect on unrecognized HID device (#13321)
== DETAILS
So, the reason the gamepad was getting deregistered was
because adapter free code wasn't properly handling null-interface
adapters, causing the gamepad to match erroneously and get
deregistered.

This doesn't fix the weird "Generic SNES USB" detection issue,
but it should make it non-fatal.

Co-authored-by: Nathan Strong <[email protected]>
2021-12-04 12:43:58 +01:00
Autechre b6695d8921 Netplay changes proposed for 1.9.14 (#13314)
* Added setting to allow/disallow players other than the host from pausing the game.
* Added a sublabel for netplay max connections.
* Fixed port override macro from not being set immediately after the port setting.
* Fixed memory leaks.
2021-12-04 02:34:21 +01:00
David G. F 9b7270cb6a Minor improvements in PSP and CTR Makefiles (mostly for devs) (#13317) 2021-12-04 02:01:00 +01:00
Jamiras b6fef13109 disallow achievement when spectating netplay (#13318) 2021-12-04 02:00:53 +01:00
github-actions 69e4ea8d33 Fetch translations from Crowdin 2021-12-04 00:06:41 +00:00
Tony 41838ef544 Refresh rate switch addition on startup (#13316) 2021-12-03 17:52:46 +01:00
Ryan Kuba 1fc6f759c5 tweak to ensure that current versions of emsdk do not break the web player (#13310) 2021-12-03 16:20:12 +01:00
Hans-Kristian Arntzen ce8a3db4dc Avoid hard crash when capturing screenshot in emulating mailbox. (#13315)
The emulating mailbox infrastructure is very hacky and needs a rethink
to be able to properly support screenshots. emulating mailbox is pretty
nasty to begin with and should be considered a hack.
2021-12-03 16:19:49 +01:00
github-actions 4a39630c0f Fetch translations from Crowdin 2021-12-03 00:07:30 +00:00
gbluesandNathan Strong 1dd15ac516 WIIU: Fix keyboard support (#13308)
== DETAILS
The problem was caused by changing the driver lookup point. The deferred
lookup resulted in the WIIU trying to treat the keyboard as a gamepad which ...
didn't work.

This change short-circuits at the connection event by ignoring mouse &
keyboard connection events.

Tested this with a dev build.

Co-authored-by: Nathan Strong <[email protected]>
2021-12-02 12:43:19 +01:00
Tony 121ca3a482 'Automatic Frame Delay' improvements: (#13297)
- swap interval handling
- d3dx handling
2021-12-02 02:32:39 +01:00
github-actions 72e49d82d6 Fetch translations from Crowdin 2021-12-02 00:07:57 +00:00
PoligrafandPoligraf b4ef32cfce add oss audio to retrofw (#13303)
Co-authored-by: Poligraf <>
2021-12-01 17:19:39 +01:00
github-actions 621c3a7b7e Fetch translations from Crowdin 2021-12-01 00:08:06 +00:00
Autechre af4bdecef9 Show passworded rooms on lobby (#13301) 2021-11-30 22:06:13 +01:00
jdgleaver 67eb42a8c2 (Audio Mixer) Increase sample buffer padding (#13300) 2021-11-30 14:52:25 +01:00
github-actions a585e05a8a Fetch translations from Crowdin 2021-11-30 00:07:17 +00:00
Aaron Ramirez 97f3fca139 Fixes a bug where the Gyroscope and Accelerometer would not be re-enabled when the app regains focus or is resumed. (#13298) 2021-11-29 16:53:13 +01:00
github-actions ef8a14a968 Fetch translations from Crowdin 2021-11-29 00:07:04 +00:00
github-actions 05f95ad428 Fetch translations from Crowdin 2021-11-28 00:08:27 +00:00
twinaphex 1d26ed64a5 Update dist-cores.sh 2021-11-27 14:04:23 +01:00
github-actions 454fddb1dc Fetch translations from Crowdin 2021-11-27 00:07:02 +00:00
Abadede c1cbe68df7 Update retroarch.cfg (#13289)
Shifted indexes to correct value.
2021-11-26 18:07:00 +01:00
github-actions 019466e928 Fetch translations from Crowdin 2021-11-26 00:07:25 +00:00
jdgleaver 73b252a0d8 Fix display of midi driver menu entry (#13286) 2021-11-25 13:24:52 +01:00
Jamiras 99a1ffdb89 validate hashes for secondary discs in multi-disc games (#13283) 2021-11-25 07:15:37 +01:00
Jamiras 339feab15b add cheevos_custom_host setting (#13284) 2021-11-25 07:15:19 +01:00
github-actions 5069acd288 Fetch translations from Crowdin 2021-11-25 00:06:52 +00:00
Tony ecef757af9 Focus on current content entry in Disc Control append/insert (#13282) 2021-11-24 19:01:43 +01:00
Alberto Fustinoni 544c8c4e29 UWP compilation fix (#13280) 2021-11-24 14:24:48 +01:00
jdgleaver 3c4b39057f file_stream_transforms.c: Ensure correct return values + fix segfault when calling rfread() with zero elem_size (#13279) 2021-11-24 11:32:42 +01:00
github-actions 1077a6f3a8 Fetch translations from Crowdin 2021-11-24 00:07:14 +00:00
twinaphex adc325e908 Move command_get_config_param to command.c 2021-11-23 17:14:38 +01:00
twinaphex bc6433e0f9 Move menu_content_environment_get to task_content.c 2021-11-23 17:10:52 +01:00
twinaphex b4137915e8 Move code to proper locations 2021-11-23 16:58:36 +01:00
twinaphex 0a40e1f771 (gl_core/gl3) Rename gl_core internally to gl3 2021-11-23 08:45:54 +01:00
twinaphex 8a83ebec28 JSON handlers only necessary when HAVE_CORE_INFO_CACHE is defined 2021-11-23 05:13:36 +01:00
twinaphex e497da9cf4 (core_info.c) Cleanups - try to fit lines within 80-char limit, put one
function behind HAVE_CORE_INFO_CACHE so we won't get a unused function
for Steam build
2021-11-23 05:05:53 +01:00
github-actions d02d32fbe4 Fetch translations from Crowdin 2021-11-23 00:07:15 +00:00
Jamiras 228c5b83e2 ensure placard is initialized on main thread when game has no achievements (#13275) 2021-11-22 16:42:43 +01:00
twinaphex c2c36177b8 Move two variables to input_driver.c 2021-11-22 15:26:54 +01:00
Autechre 5bb4df3a42 Move translation task code to tasks/task_translation.c (#13274) 2021-11-22 15:19:20 +01:00
twinaphex 9982452c18 Move code from retroarch.c to runloop.c 2021-11-22 03:33:58 +01:00
Autechre 2b87cd9313 Create runloop.c and split up runloop code to this new file; (#13269)
* Create runloop.c and split up runloop code to this new file;
retroarch.c now 207Kb and runloop.c 301Kb

* Define empty runloop_secondary_core_destroy
2021-11-22 03:27:23 +01:00
github-actions 8dfaf84cc9 Fetch translations from Crowdin 2021-11-22 00:07:09 +00:00
twinaphex d3d7748f92 Move global error_on_init/error_string/sjlj jump to global
state - move g_extern out of p_rarch
2021-11-21 23:26:47 +01:00
Autechre 113e9340c1 Move ui_companion_driver code out of retroarch.c (#13268)
* Move ui_companion_driver code out of retroarch.c

* Buildfix

* Fix error - was reading the array out of (preinitialized) bounds

* Remove unused variable
2021-11-21 23:19:23 +01:00
Autechre 5f49899343 Bluetooth refactor (#13266)
* Use HAVE_BLUETOOTH ifdef to strip out this code when not defined

* Split up bluetooth code into its own file
2021-11-21 20:44:08 +01:00
Sage 85a256e2cb Make http header parsing case insensitive (#13267) 2021-11-21 20:43:58 +01:00
Autechre 71b30d7846 Split up wifi networking code - move it into separate file (#13262) 2021-11-21 12:37:39 +01:00
twinaphex ed437fdd8e (video_crt_switch) Cleanups and potential build fix 2021-11-21 12:08:31 +01:00
github-actions 2f9a8d7b3e Fetch translations from Crowdin 2021-11-21 00:07:13 +00:00
Autechre 9e40966dce Merge pull request #13249 from ToKe79/lakka2upstream
Upstream patches from Lakka
2021-11-20 22:07:47 +01:00
twinaphex 335c24a895 Remove unused variables 2021-11-20 21:43:40 +01:00
twinaphex 7a8b629746 (Steam Linux) Default to SDL input/joypad driver 2021-11-20 21:04:30 +01:00
twinaphex d04dee7ee0 (GL1) Update code so that GL Hard Sync will work with menu
enabled [Hard sync doesn't seem implemented for GL1 anyway]
2021-11-20 03:40:48 +01:00
twinaphex 282c8ddc5f (GL3) Allow Hard GPU Sync in menu 2021-11-20 03:26:54 +01:00
twinaphex e7e6b9977f (GL2) Backport https://github.com/neil4/RetroArch-Lite/commit/75a66be87b600842d826413583047f35c3d0eb77 - Allow Hard GPU sync in menu 2021-11-20 02:20:53 +01:00
github-actions 955bf08fcd Fetch translations from Crowdin 2021-11-20 00:06:32 +00:00
github-actions 4ffe9dc5b3 Fetch translations from Crowdin 2021-11-19 00:07:09 +00:00
github-actions 17c522bbb0 Fetch translations from Crowdin 2021-11-18 00:08:22 +00:00
Tomáš Kelemen (vudiq) fd5c718b48 buildfix: undefined srm.x_scale, srm.y_scale
srm.x_scale and srm.y_scale are undefined in this context/scope.

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-07-gpicase_buildfix.patch
2021-11-18 00:36:11 +01:00
Tomáš Kelemen (vudiq) 0cf437e375 Lakka/Nintendo Switch: disable rumble gain
Rumble gain breaks controlls on Nintendo Switch port of Lakka, probably
due to issue in the driver).

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-06-switch_disable_rumble_gain.patch
2021-11-18 00:36:11 +01:00
Tomáš Kelemen (vudiq) 44dcfb88b6 Lakka: do not add include for libdrm
Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-03-libdrm-include.patch
2021-11-18 00:36:11 +01:00
Jean-André Santoni 6a99832a4d Lakka: Patch to fix keyboard typing
Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-01-xkb-fix.patch
2021-11-18 00:36:11 +01:00
Tomáš Kelemen (vudiq) efad7a7dcc Lakka: CD-ROM eject menu item
Adds new entry (where the entry for dumping CD is) to eject the disc -
in case the CD drive has no physical button to eject the disc / the
button does not work. Useless for most, but quality of life improvement
for some.

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-99-eject_disc.patch
2021-11-18 00:36:01 +01:00
Tomáš Kelemen (vudiq) a2f9273979 Bluetooth: add option to remove pairing
Pressing the START button removes the device pairing. Useful in case
the device (e.g. gamepad) was paired with a different adapter/computer
and needs to be paired again with current adapter/computer.

To pair again, RetroArch needs to be restarted, so the device list is
populated again.

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-98-remove_bluetooth_pairing.patch
2021-11-17 22:15:35 +01:00
GavinDarkglider a60df14d81 Lakka/Nintendo Switch: disable cpu scaling for Nintendo Switch
Lakka on Nintendo Switch uses own cpu governor.

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-04-cpufreq-wip-disable-on-switch.patch
2021-11-17 22:15:35 +01:00
Tomáš Kelemen (vudiq) be92517b16 Lakka: use different shutdown/reboot system commands
To avoid any filesystem corruption during shutdown/reboot a sleep is
added before shutdown/reboot is called. Also no quit is called, as the
RetroArch process will be killed by systemd. Quitting RetroArch may
result in unwanted restart of RetroArch by systemd.

Upstream of patch used by Lakka at build time
https://github.com/libretro/Lakka-LibreELEC/blob/1943ad296eaf7c01040f02aa8f5dff3d2f37309f/packages/libretro/retroarch/patches/retroarch-02-graceful-shutdown-reboot-hack.patch
2021-11-17 22:15:35 +01:00
Autechre 0867227293 Merge pull request #13248 from ToKe79/honor_config_save_on_exit
Honor config_save_on_exit when Reboot/Shutdown is called
2021-11-17 19:32:22 +01:00
Autechre e9ca17ea41 Merge pull request #13247 from Jamiras/cheevos_placard_gl
(cheevos) ensure placard is initialized on main thread
2021-11-17 18:19:40 +01:00
Tomáš Kelemen (vudiq) 3fa1052dad Honor config_save_on_exit when Reboot/Shutdown is called
When Shutdown or Reboot are selected from the main menu, configuration
is saved regardless of checking the user setting. Showing the widget and
saving the configuration should be called only in case user wants to
save configuration on exit.
2021-11-17 17:44:27 +01:00
Jamiras 3a82485a80 add missing include 2021-11-17 09:07:42 -07:00
Jamiras 11d38421df ensure placard is initialized on main thread 2021-11-17 08:18:45 -07:00
Autechre b0c859557e Merge pull request #13246 from Jamiras/cheevos_game_placard
(cheevos) use widget for game loaded achievement progress
2021-11-17 03:21:37 +01:00
github-actions 15596f953e Fetch translations from Crowdin 2021-11-17 00:06:43 +00:00
Jamiras 2adf52a493 move achievement activation to background thread 2021-11-16 11:33:37 -07:00
Jamiras 4faf2f82f1 use task to write badge 2021-11-16 09:50:28 -07:00
Jamiras a3b508f136 show widget for loaded game 2021-11-16 08:26:42 -07:00
github-actions a410cf1377 Fetch translations from Crowdin 2021-11-16 00:06:32 +00:00
Autechre 0c45d96a99 Merge pull request #13229 from libretro/move-driver
Move driver code to driver.c file - move code outside of retroarch.c
2021-11-15 19:29:54 +01:00
Autechre 369e175e60 Merge pull request #13240 from Jamiras/cheevos_rewind
(cheevos) make sure loaded is set to true before re-enabling rewind
2021-11-15 19:25:24 +01:00
Autechre 86103b5cc1 Merge pull request #13238 from Jamiras/cheevos_menu_vis
(cheevos) audit achievement settings defaults and visibility
2021-11-15 19:25:04 +01:00
Jamiras 5c55a74655 make sure loaded is set to true before re-enabling rewind 2021-11-14 21:46:23 -07:00
Jamiras 1eade78654 audit achievement settings defaults and visibility 2021-11-14 18:00:20 -07:00
github-actions 7324c0d33b Fetch translations from Crowdin 2021-11-15 00:06:59 +00:00
github-actions d8098a5ad5 Fetch translations from Crowdin 2021-11-14 00:06:53 +00:00
github-actions 02898a4a79 Fetch translations from Crowdin 2021-11-13 00:06:22 +00:00
twinaphex b9c77a48c9 Buildfixes 2021-11-12 21:49:19 +01:00
Autechre fca72f67d1 Update CHANGES.md 2021-11-12 20:40:49 +01:00
Autechre a2fa243412 Merge pull request #13232 from Jamiras/cheevos_no_password
(cheevos) show error message when no password provided
2021-11-12 20:09:37 +01:00
twinaphex 680b631ad6 Revert "(Netplay) Cthulhu88 - Remove forced disconnection on unknown netplay command -"
This reverts commit 65a421d90f.
2021-11-12 19:08:34 +01:00
twinaphex 9e0b98cd89 Buildfix 2021-11-12 19:08:10 +01:00
twinaphex a6ed23d031 Revert "(cthulhu88) Add netplay chat command"
This reverts commit 6a490c0383.
2021-11-12 19:01:31 +01:00
twinaphex efa16a8fca Revert "(Netplay) Cthulhu88 -"
This reverts commit cb4028fd3d.
2021-11-12 19:00:42 +01:00
twinaphex 4025b678bf Revert "Add missing netplay_protocol.h"
This reverts commit 1fc73f11b5.
2021-11-12 19:00:33 +01:00
twinaphex d7a8bc55a3 Revert "(Cthulhu88) Add netplay hotkey bind"
This reverts commit deaf116d38.
2021-11-12 19:00:24 +01:00
twinaphex 3b6196144f Revert "Bump NETPLAY_PROTOCOL_VERSION up to 6"
This reverts commit 823c54a39d.
2021-11-12 19:00:16 +01:00
twinaphex 9c7a55352d Revert "(Cthulhu88) Netplay polishing patch"
This reverts commit 82b8c0a60e.
2021-11-12 18:59:59 +01:00
twinaphex 62a8b13b1a Revert "(Cthulhu88) Netplay - initial netplay tunnel"
This reverts commit 369cafe1ad.
2021-11-12 18:59:52 +01:00
twinaphex 9fe56d6865 Revert "(Cthulhu88) Fix build errors of previous commit"
This reverts commit 393f9bdd48.
2021-11-12 18:59:42 +01:00
twinaphex 753332ff18 Revert "(Cthulhu88) Fix for multi-char arrays"
This reverts commit e64cd24715.
2021-11-12 18:59:35 +01:00
twinaphex fc460dbb9c Revert "Fix final warning and remove unused variables"
This reverts commit 5dd0e90fca.
2021-11-12 18:59:29 +01:00
twinaphex 70ee3fbca7 Revert "(Cthulhu88) New Netplay MITM Part 2"
This reverts commit 34c374737c.
2021-11-12 18:58:40 +01:00
Jamiras f015ecdc03 show error message when no password provided 2021-11-12 10:06:05 -07:00
jdgleaver 196cc8b33d SDL1 buildfix 2021-11-12 12:35:31 +01:00
twinaphex 34c374737c (Cthulhu88) New Netplay MITM Part 2 2021-11-12 06:31:54 +01:00
twinaphex 2d5e090eb3 Move driver code to driver.c file - move code outside of retroarch.c 2021-11-12 04:45:09 +01:00
Autechre 109ab785ee Merge pull request #13225 from Jamiras/github_actions
run apt-get update before apt-get install
2021-11-12 02:19:50 +01:00
Jamiras eba1ed6d75 run apt-get update before apt-get install 2021-11-11 17:45:50 -07:00
github-actions 038a24ae34 Fetch translations from Crowdin 2021-11-12 00:06:50 +00:00
twinaphex 9e55654e72 Simplify recalc_step_based_on_length_of_action 2021-11-11 22:32:51 +01:00
twinaphex 13d662d76b Silence some warnings 2021-11-11 22:28:16 +01:00
Autechre 1d8930625a Merge pull request #13220 from libretro/move-camera-location
Move location state and camera state out of retroarch.c
2021-11-11 22:19:50 +01:00
twinaphex a3aed79b71 Merge branch 'move-camera-location' of https://github.com/libretro/RetroArch into move-camera-location 2021-11-11 17:54:46 +01:00
twinaphex 62c6d99163 Buildfixes 2021-11-11 17:53:54 +01:00
twinaphex dfb0e298c5 Buildfix 2021-11-11 07:49:43 +01:00
twinaphex b3a1a769b9 Move location state and camera state out of retroarch.c 2021-11-11 07:43:49 +01:00
twinaphex 5dd0e90fca Fix final warning and remove unused variables 2021-11-11 05:48:29 +01:00
twinaphex e64cd24715 (Cthulhu88) Fix for multi-char arrays 2021-11-11 05:38:45 +01:00
twinaphex 393f9bdd48 (Cthulhu88) Fix build errors of previous commit 2021-11-11 05:04:17 +01:00
twinaphex 369cafe1ad (Cthulhu88) Netplay - initial netplay tunnel 2021-11-11 04:55:37 +01:00
twinaphex 82b8c0a60e (Cthulhu88) Netplay polishing patch 2021-11-11 03:37:14 +01:00
Autechre 1280151d13 Merge pull request #13216 from libretro/splitup-record
Split up recording code
2021-11-11 02:00:52 +01:00
Autechre 771585f95d Update CHANGES.md 2021-11-11 01:46:29 +01:00
github-actions c93b3e7615 Fetch translations from Crowdin 2021-11-11 00:07:11 +00:00
twinaphex b6cd140528 Revert "Fix default overlay file - overlays were re-arranged and startup overlay"
This reverts commit 318f153012.
2021-11-10 16:04:33 +01:00
twinaphex 318f153012 Fix default overlay file - overlays were re-arranged and startup overlay
was not updated to reflect this
2021-11-10 15:49:26 +01:00
twinaphex 86f899c844 Revert "Shorten character arrays that are passed to fill_pathname_base_noext"
This reverts commit 318108ac82.
2021-11-10 08:22:19 +01:00
twinaphex f06b9ecf06 Revert "Reduce character arrays passed to fill_pathname_base"
This reverts commit a4a7c3bedf.
2021-11-10 08:21:59 +01:00
twinaphex 823c54a39d Bump NETPLAY_PROTOCOL_VERSION up to 6 2021-11-10 05:11:17 +01:00
twinaphex deaf116d38 (Cthulhu88) Add netplay hotkey bind 2021-11-10 04:58:59 +01:00
twinaphex 1fc73f11b5 Add missing netplay_protocol.h 2021-11-10 02:50:29 +01:00
twinaphex cb4028fd3d (Netplay) Cthulhu88 -
* Netplay Chat menu
* Toggleable bind for chat (bound to ~ [tilde] by default)
2021-11-10 02:41:02 +01:00
twinaphex 0b768d0460 Split up recording code 2021-11-10 02:34:04 +01:00
twinaphex 174ab373e4 Move runloop prototypes to runloop.h 2021-11-10 01:22:32 +01:00
twinaphex 28bef36c74 Remove retroarch_data.h and retroarch_fwd_decls.h 2021-11-10 01:18:24 +01:00
github-actions abd089e88e Fetch translations from Crowdin 2021-11-10 00:06:50 +00:00
twinaphex a4a7c3bedf Reduce character arrays passed to fill_pathname_base 2021-11-10 00:57:32 +01:00
twinaphex 318108ac82 Shorten character arrays that are passed to fill_pathname_base_noext 2021-11-10 00:09:33 +01:00
twinaphex 619398bbe4 Backport parts of https://github.com/neil4/RetroArch-Lite/commit/73c07602362471f2c82d866250e4b2015edafc07 2021-11-09 23:12:57 +01:00
Autechre 89002e6b72 Merge pull request #13214 from MrHuu/ctr_achievement_widget_fix
[3DS] Fix achievement widget
2021-11-09 20:18:30 +01:00
MrHuu 8171e513aa [3DS] Fix achievement widget 2021-11-09 19:47:45 +01:00
twinaphex 3cfab5ab88 Fix symbol conflict with quasi88 2021-11-09 17:07:10 +01:00
Autechre d6c25f153f Merge pull request #13211 from libretro/more-retroarch-cleaning
More retroarch cleaning
2021-11-09 16:37:28 +01:00
Autechre 4e1564da16 Merge pull request #13210 from libretro/netplay-chat
(cthulhu88) Add netplay chat command
2021-11-09 16:30:57 +01:00
twinaphex 2a5751ca0e Get rid of some getters 2021-11-09 07:06:04 +01:00
twinaphex f4c5852cfa Move state from global_t to input_state_t 2021-11-09 06:27:43 +01:00
twinaphex f671ce4f8c Move global->name to runloop_st 2021-11-09 06:03:00 +01:00
twinaphex fe2c3a5310 Move state from retroarch_data.h over to retroarch.c 2021-11-09 05:16:51 +01:00
Autechre a68b95690c Update CHANGES.md 2021-11-09 03:12:12 +01:00
twinaphex 1fccddc705 (Fix by radius/fr500) Networking - should not print country for
a local lobby
2021-11-09 02:58:28 +01:00
twinaphex 6a490c0383 (cthulhu88) Add netplay chat command 2021-11-09 02:52:04 +01:00
github-actions 12bab704eb Fetch translations from Crowdin 2021-11-09 00:09:35 +00:00
twinaphex d63c6b9706 main_thread_id initial value should be 0, not NULL 2021-11-08 20:08:32 +01:00
twinaphex 2886932968 Move menu global state code from global_t to menu_st 2021-11-08 20:04:55 +01:00
twinaphex bd5295ca76 Get rid of RARCH_TIMER_ macros 2021-11-08 19:54:27 +01:00
Autechre 8ee025636e Update CHANGES.md 2021-11-08 19:29:46 +01:00
Autechre 56e150d68f Merge pull request #13207 from Jamiras/cheevos_rewind_reset
(cheevos) don't queue rewind re-init if already on main thread
2021-11-08 19:24:18 +01:00
Autechre 17e490c424 Merge pull request #13208 from barbudreadmon/patch-4
always return false if rotation can't occur
2021-11-08 19:23:35 +01:00
Autechre 7c84a26563 Merge pull request #13206 from Jamiras/cheevos_softcore_active
(cheevos) fix need-to-activate achievement logic for non-hardcore
2021-11-08 18:10:00 +01:00
barbudreadmon 211e7d4094 always return false if rotation unavailable 2021-11-08 17:59:31 +01:00
Jamiras 84cab492b2 add task_in_on_main_thread function 2021-11-08 09:35:25 -07:00
twinaphex fc898d016b (GX2) wiiu_gfx_load_texture - make it safer - get rid of unused
wiiu pointer; do early return when image is NULL
2021-11-08 17:07:17 +01:00
Autechre d651c9ae02 Merge pull request #13205 from Jamiras/cheevos_hide_unofficial
(cheevos) ignore unofficial achievements unless setting is enabled
2021-11-08 16:37:19 +01:00
Jamiras af23c5c900 fix need-to-activate achievement logic for non-hardcore 2021-11-08 08:34:51 -07:00
Autechre edd446929b Merge pull request #13203 from farmerbb/master
[Android / Play Store] Implement MANAGE_EXTERNAL_STORAGE permission
2021-11-08 16:33:25 +01:00
Jamiras f2bc7caad9 ignore unofficial achievements unless setting is enabled 2021-11-08 07:15:56 -07:00
Braden Farmer 11de2ae1fe [Android / Play Store] Implement MANAGE_EXTERNAL_STORAGE permission 2021-11-07 23:08:24 -07:00
github-actions 5c75b683af Fetch translations from Crowdin 2021-11-08 00:07:11 +00:00
Autechre 446ed5f5b3 Merge pull request #13195 from guoyunhe/patch-10
Fix Crowdin Daily Action
2021-11-07 23:42:50 +01:00
twinaphex a93a2e3366 (MSVC2019 UWP) Buildfix 2021-11-07 05:54:23 +01:00
Guo Yunhe dc8b6a93d4 Fix Crowdin Daily Action
Python module installation
2021-11-07 10:55:35 +08:00
twinaphex 673d77284d BUmp up version to 1.9.13 2021-11-07 03:28:14 +01:00
twinaphex 88c771fc66 Cleanups 2021-11-07 01:44:45 +01:00
twinaphex c0585fed60 (winraw_input.c) Cleanups 2021-11-06 15:07:35 +01:00
twinaphex 9cdf00e7ee Global variable states - preinitialize to 0 2021-11-06 14:47:34 +01:00
twinaphex 139eaad627 Fix warning 2021-11-06 14:20:02 +01:00
twinaphex 8dcbd61eeb (Netplay) Fix memory leak - pointed out by Cthulhu88 2021-11-06 14:17:03 +01:00
Autechre 9883f11e10 Merge pull request #13194 from sonninnos/auto-frame-delay-fix
Crash fix for 'Automatic Frame Delay'
2021-11-06 13:42:19 +01:00
Autechre cf89152dea Merge pull request #13192 from guoyunhe/patch-9
Crowdin: Fix Python syntax error
2021-11-06 13:42:08 +01:00
sonninnos 75e16f684e Crash fix for 'Automatic Frame Delay' 2021-11-06 14:36:14 +02:00
Guo Yunhe 376dd7c1c3 Update crowdin-daily.yml 2021-11-06 14:11:30 +08:00
Guo Yunhe 08be8156c3 Crowdin: Fix Python syntax error 2021-11-06 14:08:12 +08:00
Jamiras 830960027e fix double free when rich presence update task fires while game is not loaded (#13191) 2021-11-06 06:03:16 +01:00
twinaphex 61d30cdc31 Move input code from retroarch.c to input_driver.c 2021-11-06 04:34:54 +01:00
twinaphex 0c0b86c4cf Buildfix #4 2021-11-06 03:56:34 +01:00
twinaphex 0e0b3bfc68 Buildfix #3 2021-11-06 03:52:02 +01:00
twinaphex cbe00cad57 Another buildfix (sigh) 2021-11-06 03:41:14 +01:00
twinaphex ae9ebf13d3 Potential buildfix 2021-11-06 03:38:41 +01:00
twinaphex 89fd900429 Define this for HAVE_TRANSLATE too 2021-11-06 02:24:28 +01:00
twinaphex a1165664a6 Buildfixes 2021-11-06 02:20:18 +01:00
twinaphex 6d9c9e2b2c Move more code around 2021-11-06 02:18:01 +01:00
twinaphex 5ef57909ef (menu_driver.c) Get rid of menu_state_get_ptr calls 2021-11-06 02:12:21 +01:00
twinaphex 3cea5996bc Move code from retroarch.c to menu_driver.c 2021-11-06 02:13:10 +01:00
twinaphex 538a334fe8 Remove unused variables 2021-11-06 02:04:07 +01:00
twinaphex a594ccd81c (Accessibility) Move out of p_rarch state 2021-11-06 01:59:03 +01:00
twinaphex 0af9b72388 (network) Cleanups 2021-11-06 00:27:51 +01:00
grant2258andgrant2258 1ae36ee9a7 udev fix dolphinbar and safeguard against not adding devices with no mouse or touch buttons detected (#13143)
* udev fixes

* updates

* small updates

* fix condition

Co-authored-by: grant2258 <[email protected]>
2021-11-05 23:59:17 +01:00
Tony 3137f8470b Add 'Automatic Frame Delay' option (#13190) 2021-11-05 23:42:23 +01:00
twinaphex 65a421d90f (Netplay) Cthulhu88 - Remove forced disconnection on unknown netplay command -
will be backwards compatible with any version that removed this
disconnect. instead of disconnecting, we just read the data and
ignore, like most network implementations do
2021-11-05 22:49:59 +01:00
twinaphex 0b16a64d40 Remove unused variables 2021-11-05 22:42:09 +01:00
twinaphex 6a0d7c63d5 Use C-style comment 2021-11-05 22:33:08 +01:00
twinaphex ae43a7e7cb (CLI) -C/--connect command-line fix 2021-11-05 22:25:06 +01:00
twinaphex c912619653 * Move port_map to runloop_state
* Get rid of p_rarch dependencies in functions
2021-11-05 22:03:13 +01:00
twinaphex 1f4123ba54 Don't include netplay.h header unless we have HAVE_NETWORKING
defined
2021-11-05 19:50:02 +01:00
twinaphex 0a209c4564 Last suggested fix 2021-11-05 19:22:22 +01:00
twinaphex a50cd1105e Hopefully fixes it 2021-11-05 19:18:26 +01:00
twinaphex 67c010394d Remove netplay_discovery.h - hopefully fixes other build issues 2021-11-05 19:12:55 +01:00
twinaphex aadedf39f2 Buildfixes as suggested by forum member - should hopefully fix
console builds as well as other issues
2021-11-05 19:04:52 +01:00
twinaphex 3bc6dd97d9 Revert "Revert "Move stray globals to networking state""
This reverts commit a796f1ce58.
2021-11-05 18:55:55 +01:00
twinaphex ac1f6ab599 Revert "Revert "Move some stray globals to netplay state""
This reverts commit 722f9bbfac.
2021-11-05 18:53:33 +01:00
twinaphex 7e7b2d826e Revert "Revert "Remove obsolete comment""
This reverts commit 3597643faa.
2021-11-05 18:53:20 +01:00
twinaphex 2820231dd0 Revert "Revert "remove unused variables""
This reverts commit 0c735e5c9c.
2021-11-05 18:53:09 +01:00
twinaphex 7f33a03423 Revert "Revert "Backport netplay changes from forum member""
This reverts commit 38a6b9f086.
2021-11-05 18:52:56 +01:00
twinaphex 38a6b9f086 Revert "Backport netplay changes from forum member"
This reverts commit 367ac6ce46.
2021-11-05 18:34:52 +01:00
twinaphex 0c735e5c9c Revert "remove unused variables"
This reverts commit cea8528929.
2021-11-05 18:34:43 +01:00
twinaphex 3597643faa Revert "Remove obsolete comment"
This reverts commit e8ed660ea1.
2021-11-05 18:34:32 +01:00
twinaphex 722f9bbfac Revert "Move some stray globals to netplay state"
This reverts commit f264d20d1e.
2021-11-05 18:34:24 +01:00
twinaphex a796f1ce58 Revert "Move stray globals to networking state"
This reverts commit 96053e14a7.
2021-11-05 18:34:11 +01:00
twinaphex 96053e14a7 Move stray globals to networking state 2021-11-05 18:07:41 +01:00
twinaphex f264d20d1e Move some stray globals to netplay state 2021-11-05 17:50:18 +01:00
twinaphex e8ed660ea1 Remove obsolete comment 2021-11-05 17:41:30 +01:00
twinaphex cea8528929 remove unused variables 2021-11-05 17:40:56 +01:00
twinaphex 367ac6ce46 Backport netplay changes from forum member 2021-11-05 17:17:10 +01:00
twinaphex 3ead1ac5df Move discord code to separate file 2021-11-05 14:00:37 +01:00
twinaphex 121174c9af (Discord) Remove stray discord_is_inited global - put it in
discord_state_t instead
2021-11-05 13:45:00 +01:00
Guo Yunhe 15321b2588 Fix Crowdin Daily GitHub Action (#13187)
* Update crowdin-daily.yml

* Update json2h.py
2021-11-05 11:38:35 +01:00
twinaphex 8af0c2755d Remove unused variables 2021-11-05 05:10:32 +01:00
twinaphex 9c3c547482 Need to be placed above this code block 2021-11-05 04:50:16 +01:00
twinaphex db9283b57c Silence some warnings 2021-11-05 04:49:26 +01:00
twinaphex 11defb4009 Move netplay/networking code to netplay_frontend.c - move it out of
retroarch.c
2021-11-05 04:42:03 +01:00
twinaphex 21beb6064a Silence some warnings 2021-11-05 03:58:26 +01:00
twinaphex fe0c0d73ff Move aspectratio_lut to video_driver.c 2021-11-05 03:47:04 +01:00
twinaphex f50df1acfb Buildfix 2021-11-05 03:15:17 +01:00
twinaphex c54aeffd9e Cleanups 2021-11-05 02:58:41 +01:00
twinaphex c17bcb8d91 Move code from retroarch.c to video_driver.c 2021-11-05 02:53:58 +01:00
twinaphex e4ccc2508e Move code over from retroarch.c to video_driver.c 2021-11-05 02:33:22 +01:00
twinaphex 18412e34c1 Some CXX_BUILD buildfixes for Mac 2021-11-05 02:16:40 +01:00
Autechre 97753bad7c Update retroarch.yml 2021-11-05 01:46:19 +01:00
twinaphex d97f05650d (YXML) Buildfix 2021-11-05 01:24:13 +01:00
twinaphex c8b69aa506 More preparation for being able to move code out of retroarch.c 2021-11-05 00:50:20 +01:00
twinaphex aea4b3e318 (yxml) Remove unused inline function; get rid of inline macro 2021-11-05 00:24:21 +01:00
twinaphex d3fd72ba63 Fix header include - should have been relative 2021-11-05 00:09:45 +01:00
Jamiras 088aa7dcb9 add github action for c89 build (#13186)
* add retroarch.yml

* fix c89 errors

* attempt to add dependencies

* update comments
2021-11-05 00:05:13 +01:00
twinaphex 574b850dd7 Preparations for being able to move discord and networking code
out of retroarch.c
2021-11-04 22:50:38 +01:00
github-actions 4b95c5dc84 Fetch translations from Crowdin 2021-11-04 00:06:05 +00:00
twinaphex be347e9d49 Move command_event_reinit to command.c 2021-11-04 00:38:18 +01:00
twinaphex c5b20dff41 (3DS/CTR) Cleanup 2021-11-03 22:01:01 +01:00
twinaphex f59b420fde * Move more code to command.c
* Buildfix for CTR/3DS
2021-11-03 21:59:58 +01:00
twinaphex 69e8416e45 (CTR) C89 conformity cleanups 2021-11-03 21:42:11 +01:00
twinaphex 514ed00f2d Move configuration state over to configuration.c - take it out of
p_rarch
2021-11-03 21:22:37 +01:00
Guo Yunhe 6ad91b2b37 Crowdin integration full (#13171)
* Create crowdin-daily.yml

* Update crowdin.yaml

* Update crowdin_sync.py

* Update fetch_progress.py
2021-11-03 18:44:08 +01:00
twinaphex cbfbd14268 (MSVC 2010 Griffin) Add HAVE_CHEEVOS to MSVC 2010 build 2021-11-03 17:11:20 +01:00
twinaphex af2e91fcfe (Cheevos) MSVC buildfix 2021-11-03 16:53:59 +01:00
twinaphex 1a78d91348 MSVC buildfix 2021-11-03 16:50:41 +01:00
Autechre 80e0114ccf Move collect_system_input to input_driver.c (#13183) 2021-11-03 16:48:57 +01:00
gblues 1ef78d3e3d Any pad can control the menu (#13173)
* Any pad can control the menu

== DETAILS
I am not sure I've quite got it so that any pad can *open* the
menu, but I do have it so any pad can control it.

- split out the input processing into a separate method
- track down and squish some hairy bugs that boiled down to
  bad pointer math
- it looks like `menu_driver.c` has a mix of line endings, so I
  ran it through `dos2unix` so it has consistent line endings
  again.
- verified that this change did not impact actual cores

* optimize out cumulative_bits

* Incorporate PR feedback

Many thanks to @jdgleaver for providing these optimizations.

* apply one more optimization
2021-11-03 16:32:15 +01:00
twinaphex 4b16b4fe9a Change this to gblues' implementation and leave a TODO/FIXME 2021-11-01 21:17:39 +01:00
twinaphex c88577850d (frontend_driver.c) Try to make the code more safe if the pointer
is NULL
2021-11-01 19:34:54 +01:00
twinaphex 05ca465aab (Cheevos) Style nits:
* single line code blocks - remove brackets
* Try to fit lines into 80 chars
* Etc
2021-11-01 18:38:56 +01:00
twinaphex b9df71b9d5 (cheevos) Silence warnings/remove unused variables 2021-11-01 18:06:36 +01:00
Jamiras 20264aaced replace coroutines with tasks (#13178) 2021-11-01 18:02:40 +01:00
twinaphex abce5e1c6f (retroarch.c) Cleanups - go through more pointers 2021-10-30 11:32:10 +02:00
twinaphex aaad65538c Move rarch_patch_blocked to runloop_state, and get rid of
RARCH_CTL_IS_PATCH_BLOCKED
2021-10-30 11:15:45 +02:00
Autechre 49e99266f8 Move frontend code to frontend_driver.c (#13170) 2021-10-29 19:43:37 +02:00
twinaphex c5688729c2 Move has_set_libretro_device to runloop_state 2021-10-29 18:24:19 +02:00
twinaphex 2e19dbe932 lastcmd_source and lastcmd_net_fd never used - get rid of them 2021-10-29 17:45:24 +02:00
twinaphex 5477e34815 Move stray globals subsystem_data and subsystem_current_count to
runloop_state
2021-10-29 17:41:31 +02:00
twinaphex bf8cae10a3 Move retroarch_get_shader_preset to video_shader_parse.c 2021-10-29 16:35:50 +02:00
Autechre e42f8228de Move cli_shader to video_state (#13168)
* Move cli_shader to video_state

* Formatting fixes
2021-10-29 15:35:43 +02:00
twinaphex ec7b7821fa Move code out of retroarch.c 2021-10-29 14:13:16 +02:00
twinaphex 18707da360 Move menu_driver_ctl to menu_driver.c 2021-10-29 13:31:10 +02:00
twinaphex 80e7e1adde Move state over 2021-10-28 06:03:54 +02:00
jdgleaver c67c7c944d Initialise 'Explore' menu on a background thread (#13162) 2021-10-27 17:51:22 +02:00
Tomáš Kelemen 8f88610d32 add define for HAVE_LAKKA_NIGHTLY when used as option (#13155) 2021-10-26 22:01:51 +02:00
Tomáš Kelemen 82d4cd9f19 do not sort FILE_TYPE_DOWNLOAD_LAKKA type list (#13156)
the `.index` file downloaded using the updater already has the files
sorted from latest version to oldest, so sorting is not wanted here
2021-10-26 22:01:38 +02:00
tunip3 d75127e9c2 Fix issue where files over 2.5gb approx would fail to load on uwp/xbox (#13150)
* fix issue where files over 2.5 gb would fail to read

* fix issue where trying to get the file size on excessively large files would fail
2021-10-26 01:43:44 +02:00
alphanu1andAntonio Giner f5d8d07cf1 Fixes for fractal scaling (#13149)
* CRT Fractal scalling fix for SR2

Added comment to remind me to add video core to SR2

fixed typo

* Addedd only x fractal scaling for super resolutions

* Properly handle fractional scale factors and fix some typos.

Co-authored-by: Antonio Giner <[email protected]>
2021-10-26 01:43:22 +02:00
Autechre 6b7f28761a Merge pull request #13148 from ToKe79/cpufreq-hdr
add header for cpufreq
2021-10-24 18:25:36 +02:00
Tomáš Kelemen (vudiq) 643a1c7e6f add header for cpufreq
functions using set_cpu_scaling_signal() (used by Lakka) have been
moved, but the header was not added
2021-10-24 12:41:23 +02:00
twinaphex e2b7c23902 Bump up version to 1.9.12 2021-10-24 03:55:08 +02:00
Autechre 4fe63e6f3f Update CHANGES.md 2021-10-24 03:50:42 +02:00
Autechre bec793b030 Merge pull request #13146 from IlDucci/translationsupdatewithscript
Fetch translations from Crowdin 23-Oct-2021
2021-10-24 03:10:14 +02:00
IlDucci 4a1dd3d80d Fetch translations from Crowdin 23-Oct-2021 2021-10-23 22:23:31 +02:00
twinaphex c79b60ba77 Change val_d back to 16 size 2021-10-21 04:34:04 +02:00
twinaphex 22ae6f23aa (menu displaylist/remapping) Increase val_s and val_d char arrays to 256 2021-10-21 04:16:26 +02:00
twinaphex 758eafa686 (SDL) Potential buildfix 2021-10-20 15:57:34 +02:00
twinaphex 5ec93d2493 (HID) Fix some warnings 2021-10-20 02:23:01 +02:00
twinaphex 1dc77507a8 Fix command stdin - courtesy of Cthulhu 2021-10-19 22:23:07 +02:00
Autechre 1e1919b236 Merge pull request #13138 from mahoneyt944/patch-1
Log new line
2021-10-19 19:31:06 +02:00
mahoneyt944 df6b1c306f Log 2021-10-19 09:46:40 -04:00
Autechre 514534f99b Move more state to runloop_state (#13124)
* Move more state to runloop state

* remove unused variable

* Cleanup

* Move more state to runloop_state

* Remove unused variable

* Cleanups

* move input_remapping functions over to input_driver.c

* Some buildfixes
2021-10-18 15:23:22 +02:00
Autechre 47a6df871a Merge pull request #13134 from grant2258/udev
add extra abs check for dolphinbar
2021-10-18 14:59:48 +02:00
jdgleaver 9a3be2ef2b (.gitlab-ci.yml) Detect Android build errors 2021-10-18 13:32:29 +02:00
grant2258 6e8a3945d5 add extra abs check for dolphinbar 2021-10-18 03:43:49 +01:00
twinaphex 8ff07916ec Backport netplay changes from Cthulhu 2021-10-18 01:13:35 +02:00
twinaphex edeb684712 (Android) Buildfix 2021-10-17 23:38:21 +02:00
twinaphex 4a834bda36 Set CODE_SIGN_IDENTITY and DEVELOPMENT_TEAM back - these should
not be altered
2021-10-17 23:30:26 +02:00
Autechre acd1ba0449 Merge pull request #13130 from gblues/gblues/kpad
Fix wiimotes regression
2021-10-17 15:05:52 +02:00
Nathan Strong c0719e737b build fix 2021-10-17 00:25:01 -07:00
Nathan Strong 12a44e0365 Fix crashes reported by ploggy
== DETAILS

The crashes he reported in the gbatemp thread are due to iface
being null (since it's an unsupported device) and unchecked
iface dereferences.
2021-10-17 00:13:48 -07:00
Nathan Strong 5b4b766459 Fix wiimotes regression
== DETAILS
- only call disconnect when we're actually disconnecting a remote
  (e.g. read errors or remote goes to sleep).
- clean up some compile warnings introduced by others (mainly
  unused variables)
2021-10-16 23:56:15 -07:00
Autechre 2f4cfe2a02 Merge pull request #13128 from gblues/gblues/osx-ds3
HID: get Sony Sixaxis (DualShock 3) working on Mac OSX
2021-10-17 03:15:07 +02:00
Nathan Strong 81c6d3809a Finish up the OSX DS3 driver
== DETAILS
Put the finishing touches on getting the DS3 to work on Mac OSX.

Basically, there's some differences in the HID interface bewtween
wiiu and osx where OSX expects the first byte of the report to be
the report ID, while wiiu expects that byte to be trimmed off.

I was able to put this behavior in the respective HID
implementations, which eliminated the confusing packet offset
ifdefs.

And, I was able to get the LEDs working again.
2021-10-16 14:52:56 -07:00
Nathan Strong 729c219f1a Rewrite DS3 driver
== DETAILS
The DS3 driver previously only worked with the Wii U HID implementation.

I adapted this driver from the Linux driver for the DS3. It's not quite
100%--I haven't got the LEDs to work properly--but it's functional.

Going to continue tweaking it to see if I can get the LEDs to work.
2021-10-16 14:52:56 -07:00
Nathan Strong 7ed3ca7f97 WIP commit
Start trying to adapt the linux DS3 driver instead of our
hacked-together support.
2021-10-16 14:52:56 -07:00
Autechre 840cca36fa Merge pull request #13126 from ofsaleem/master
feat: solarized light ozone theme (#5)
2021-10-16 22:30:19 +02:00
Omar Saleem b4878a8e7b feat: solarized light ozone theme (#5)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme

* added underscore to theme name

* adjusting message background color

* fixing message background color

* fixed cursor color border

* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* fixing solarized dark ozone theme

fixing name of theme in ozone.c so assets load properly, fixing cursor and message colors to be green instead of purple

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* i had based this branch on the wrong branch, fixed

* first pass, only changing background and regular text

* trying orange and magenta highlights

* Revert "trying orange and magenta highlights"

This reverts commit 1f1e107888cee0e97c6354a8d114863b39af8d00.

* applying the new colors to the right theme this time :)

* trying red instead of pink

* trying magenta icons in a desperate attempt to justify the use of the color

* trying magenta icons, orange labels and selector

* back to orange and red, sigh

* trying sidebar colors

* fixing sidebar gradient

* light theme red animated border colors

* trying magenta for second border color

* that was bad, trying a less light red

* going even darker

* made cursor border get darker instead of lighter

* that was a little too dark

* changed light theme running background to be..light
2021-10-16 16:17:16 -04:00
Autechre 320f2308f6 Merge pull request #13121 from ofsaleem/master
fix: solarized dark ozone theme assets and color tweaks
2021-10-16 22:10:54 +02:00
Autechre c1b002e454 Merge pull request #13125 from grant2258/mouse
Udev pointer pressed update to support relative devices pointer pressed
2021-10-16 22:10:36 +02:00
grant2258 1fca7507dc cleanup 2021-10-16 19:36:35 +01:00
grant2258 a68e5205bd add relative left mouse button when pointer device is not abs 2021-10-16 19:26:40 +01:00
Omar Saleem 038b28c5f2 updating text labels to be brighter (#4)
* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0
2021-10-16 12:42:45 -04:00
Omar Saleem 64dabb0388 Revert "Solarized light (#3)"
This reverts commit 485d07691d.
2021-10-15 23:51:25 -04:00
Omar Saleem 485d07691d Solarized light (#3)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme

* added underscore to theme name

* adjusting message background color

* fixing message background color

* fixed cursor color border

* adjusting text to be one notch brighter, base0 -> base1, base01 -> base0

* adjusting sublabel text to use base00 instead, its in between base01 and base0

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* fixing solarized dark ozone theme

fixing name of theme in ozone.c so assets load properly, fixing cursor and message colors to be green instead of purple

* added message hashes for light theme name

* added defines and enums for the light theme

* added solarized light structs into ozone.c, theyre all clones of dark for now

* i had based this branch on the wrong branch, fixed

* first pass, only changing background and regular text

* trying orange and magenta highlights

* Revert "trying orange and magenta highlights"

This reverts commit 1f1e107888cee0e97c6354a8d114863b39af8d00.

* applying the new colors to the right theme this time :)

* trying red instead of pink

* trying magenta icons in a desperate attempt to justify the use of the color

* trying magenta icons, orange labels and selector

* back to orange and red, sigh

* trying sidebar colors

* fixing sidebar gradient

* light theme red animated border colors

* trying magenta for second border color

* that was bad, trying a less light red

* going even darker

* made cursor border get darker instead of lighter

* that was a little too dark

* changed light theme running background to be..light
2021-10-15 23:44:42 -04:00
Omar Saleem 591467d247 fixing solarized dark ozone theme
fixing name of theme in ozone.c so assets load properly, fixing cursor and message colors to be green instead of purple
2021-10-15 16:37:32 -04:00
Omar Saleem 0c017a2c82 reverting so i can squash commits 2021-10-15 16:36:09 -04:00
Autechre f86c28afac Merge pull request #13120 from libretro/move-runloop2
move more state to runloop_state
2021-10-15 16:43:44 +02:00
twinaphex 9184d0e114 Move hid_data to input_st 2021-10-15 16:31:31 +02:00
twinaphex 5c6d92bb95 move more state to runloop_state 2021-10-15 16:13:21 +02:00
twinaphex b200ced199 Buildfix for --have-menu 2021-10-15 14:43:25 +02:00
Autechre eb4ed9b2f0 Merge pull request #13119 from ofsaleem/master
feat: new ozone theme - solarized dark
2021-10-15 14:40:06 +02:00
twinaphex 9b4636ff62 Fixes --disable-menu 2021-10-15 14:32:07 +02:00
Autechre 527eb86655 Merge pull request #13117 from libretro/move-runloop
Move state to runloop state
2021-10-15 14:05:46 +02:00
twinaphex 8db4e2a862 Get rid of HAVE_MENU ifdefs in menu_driver.c 2021-10-15 14:01:44 +02:00
twinaphex af40baa04d Address feedback 2021-10-15 13:54:04 +02:00
Omar Saleem 5226a0659a new ozone theme: solarized dark (#1)
* feat: adding solarized dark theme to ozone

* fix: variable not defined in header

* fix: added string for selecting theme in menu

* fix: added message hash for string

* feat: copied solarized dark translations into msg hashes

* fix: forgot to change name of enum label after copying

* first pass of new colors

* added selection border and fixed sublabel color

* sublabel color from blue to muted gray

* trying cyan for sublabel

* adjusted selected text color to match philosophy from solarized website

* testing what the entries_ colors do

* chose colors for entries_, adjusted other border and bgs

* match selection border to sublabel color

* trying gray for sublabel

* accidentally put the color in the wrong place, reverting and updating

* trying to change selected option color to orange

* not feeling orange, lets try teal

* try for orange border

* try for magenta border

* try for violet border

* trying blue border again

* trying omar blue bc why not

* reverting to regular blue for icons and green for border

* try magenta for footer border

* trying font color for footer border

* trying to get message background to show

* can't get it to render, but changed message background to violet

* testing sidebar changes

* sidebar colors

* lighter sidebar color

* trying gray sidebar

* try a gradient

* screwed up one of the coordinates

* reversing gradient

* attempting gradient with colors i made up

* accidentally wrote gradient to dracula instead of solarized dark

* adding gradient to the top, reversing bottom gradient

* randomly trying shuffling bottom gradient coords

* moving top right coordinate somewhere else

* swapped top two bottom coords to see

* swapped them back, i got lucky and things were right

* think i figured out the order,  BL, BR, TL, TR

* making background gradient lil darker

* fixed coords

* lessening gradient effect

* lessening gradient effect, but by making darker instead of lighter

* of course, messed up two coords

* removed top and bottom gradients

* dark and flat sidebar

* forgot to change running background

* made running background a bit less transparent since this is a low contrast theme
2021-10-15 03:16:13 -04:00
twinaphex a16df36b28 Don't use menu_state_get_ptr from inside menu_driver.c 2021-10-15 04:01:06 +02:00
twinaphex a291323467 Move some code to gfx/video_driver.c 2021-10-15 02:25:12 +02:00
twinaphex 40aa7dad10 Move code to menu_driver.c and rename retroarch_ function to runloop_
function
2021-10-15 02:14:43 +02:00
twinaphex 6f7b5a3f15 Buildfix for non-HAVE_DYNAMIC 2021-10-15 00:23:40 +02:00
twinaphex 70b337782d Fix MSVC build 2021-10-15 00:11:52 +02:00
twinaphex b9500ff729 Move state over to runloop state 2021-10-14 22:18:14 +02:00
twinaphex 5e8b2bfed1 Move variables to runloop state 2021-10-14 22:02:09 +02:00
twinaphex ba19dc3140 Move more related to core to runloop_state 2021-10-14 21:47:35 +02:00
twinaphex bf2c3902d4 Cleanups 2021-10-14 21:35:38 +02:00
twinaphex 2b41173cd5 Move more state to runloop_state 2021-10-14 21:22:07 +02:00
twinaphex 6d6ed11b60 remove unused p_rarch variables 2021-10-14 21:18:53 +02:00
twinaphex eef9668263 move runloop state from retroarch_data to runloop_state 2021-10-14 21:15:11 +02:00
Autechre 6ccac53d89 Merge pull request #13116 from jdgleaver/contentless-sram
Enable SRAM for contentless cores
2021-10-14 19:29:30 +02:00
twinaphex 6d13461948 Fix to earlier HAVE_CORE_INFO_CACHE commit 2021-10-14 16:46:48 +02:00
twinaphex a476910ca6 (Mac) BaseConfig.xcconfig - change formatting back 2021-10-14 16:06:17 +02:00
twinaphex 28cac5c5a4 Add HAVE_CORE_INFO_CACHE - disable this for Steam build 2021-10-14 15:57:28 +02:00
jdgleaver 40925baacd Enable SRAM for contentless cores 2021-10-14 13:59:23 +01:00
twinaphex c19b04e21e Cleanup emscripten_mainloop 2021-10-13 23:15:14 +02:00
twinaphex b5e7957260 Fix emscripten 2021-10-13 23:14:26 +02:00
twinaphex 7f2cc93cf5 Silence warning 2021-10-13 21:44:40 +02:00
twinaphex c098a321b4 silence more warnings 2021-10-13 20:27:31 +02:00
twinaphex a79bd56018 (WiiU) Prevent implicit declarations 2021-10-13 20:22:01 +02:00
Autechre af0746c6d7 Merge pull request #13113 from tim77/metainfo
Update metadata manifest (Linux)
2021-10-13 19:56:36 +02:00
twinaphex 8bab67ea9c Potential buildfix for targets without HAVE_AUDIOMIXER support 2021-10-13 19:51:28 +02:00
twinaphex aa6d3542d2 Prevent warning 2021-10-13 18:44:27 +02:00
Autechre 78b861a8e8 Merge pull request #13114 from libretro/move-widgetstate
Better compartmentalize state - better distinction between runloop and retroarch files
2021-10-13 18:43:23 +02:00
twinaphex 70606eab1e Buildfix for WiiU 2021-10-13 18:40:41 +02:00
twinaphex 22d70a64dd Move command_write_memory and command_read_memory to command.c 2021-10-13 18:15:35 +02:00
twinaphex 753a04c9c1 Move menu_driver_toggle to menu_driver.c 2021-10-13 17:59:45 +02:00
twinaphex caccc410c6 Move gfx_widgets_ready to gfx_widgets.h 2021-10-13 17:51:46 +02:00
twinaphex 68f0e50a2f rename a bunch of functions to runloop_ prefix instead of retroarch_ -
we need to make a better distinction between runloop and the 'retroarch
state'
2021-10-13 17:48:40 +02:00
twinaphex 0b66c81197 Move state variables to runloop_state 2021-10-13 17:37:24 +02:00
twinaphex e72a88a98e Move some variables to widget state 2021-10-13 17:25:31 +02:00
twinaphex d87e0c1744 * Fix implicit declaration
* Move more code to gfx/video_driver.c
2021-10-13 16:36:38 +02:00
twinaphex e47e9968ed Move audio_driver_menu_sample to audio_driver.c and turn
audio_driver_flush into static function
2021-10-13 16:29:41 +02:00
twinaphex f070da6dfc Move code to menu_driver.c and input_driver.c 2021-10-13 15:40:01 +02:00
twinaphex 99b09ce359 Move more code to gfx/video_driver.c 2021-10-13 15:20:09 +02:00
twinaphex 5f4d4fe678 Move more code from retroarch.c to video_driver.c - retroarch.c now
778kb
2021-10-13 15:15:24 +02:00
Autechre 0ca98195d9 Merge pull request #13096 from salvacam/miyoo-ifdef-fix
miyoo ifdef fix
2021-10-13 15:16:42 +02:00
Artem Polishchuk 9781caa20b chore: Update metadata manifest (Linux) 2021-10-13 16:08:58 +03:00
Autechre 0a888f7868 Move video state to gfx/video_driver.c - reduces filesize of retroarch.c to 809kb (#13104)
* Move video state to gfx/video_driver.c - reduces filesize of retroarch.c
to 809Kb
2021-10-13 14:56:22 +02:00
Autechre 0b2c80a402 Merge pull request #13112 from jdgleaver/dingux-joypad-defines-fix
(Dingux) Fix HAS_ANALOG/HAS_MENU_TOGGLE defines in sdl_dingux joypad driver
2021-10-13 14:25:42 +02:00
Autechre 2179bc8716 Merge pull request #13111 from jdgleaver/3ds-2d-fix
(3DS) Ensure parallax barrier is disabled when '3DS Display Mode' is '2D'
2021-10-13 14:00:23 +02:00
jdgleaver f1ac1ad9f9 (Dingux) Fix HAS_ANALOG/HAS_MENU_TOGGLE defines in sdl_dingux joypad driver 2021-10-13 12:53:54 +01:00
jdgleaver 1ebf821da3 (3DS) Ensure parallax barrier is disabled when '3DS Display Mode' is '2D' 2021-10-13 12:31:43 +01:00
Autechre ac1a280665 Merge pull request #13107 from markand/fix-wifi
Fix missing time.h header in wifi_driver.h
2021-10-12 14:11:38 +02:00
David Demelier a23a358dc9 Fix missing time.h header in wifi_driver.h 2021-10-12 13:55:29 +02:00
twinaphex cfb2ae7d2c need to use SetWindowText for LEGACY_WIN32 2021-10-12 12:41:05 +02:00
twinaphex 849ed7fc3d Buildfix for MSVC 2021-10-12 11:58:22 +02:00
Soar QinandSoar Qin 290bc214e3 win32: fix broken win9x builds caused by #13089 (#13106)
Co-authored-by: Soar Qin <[email protected]>
2021-10-12 11:24:58 +02:00
twinaphex e9d4fcc00c Buildfix 2021-10-11 18:06:25 +02:00
Bernhard Schelling a3d9201581 Add environment callback to get the rate retro_run is called (#13022)
* Add GET_THROTTLE_STATE environment callback

* Add RETRO_THROTTLE_UNBLOCKED
to report the case where neither vsync nor audio is limiting the call rate.
Also fix reporting of some special cases when the menu is open.

* Change throttle state mode to unsigned
Use #defines Instead of the untyped C enum to allow easier future additions.

* Spelling fixes

* Avoid any divide-by-zero
2021-10-11 18:05:13 +02:00
Autechre e7f182811a Split up audio code into new file audio/audio_driver.c (#13097)
* Split up audio code into new file audio/audio_driver.c

* Fix build issues #1

* Small cleanup

* Fix typo
2021-10-11 18:01:37 +02:00
Kirby Kevinson 177d05144a Fix keyboard input on Wayland (#13102)
Fixes #13036
2021-10-11 13:20:41 +02:00
gblues dd6c70a083 Fix a couple regressions (#13101)
== DETAILS

- rewrote the HID deregistration algorithm; it should no longer
  cause issues when dealing with multiple pads of the same HID/VID
  combo
- fix initialization bug that caused wiimotes to fail to register
  without an accessory attached
2021-10-11 09:39:13 +02:00
salvacam 757ba2f16d miyoo ifdef fix 2021-10-10 20:00:53 +02:00
Autechre a9125fffaa Update CHANGES.md 2021-10-09 16:25:25 +02:00
twinaphex bcc7581250 (joypad_connection.c) Cleanups - style nits - comment out some logs
that were generating warnings
2021-10-09 16:19:54 +02:00
twinaphex 107d315559 Bump up version 2021-10-09 16:14:46 +02:00
Soar Qin 39fd4677d9 win32: fix non-ASCII text display in window title (#13089) 2021-10-09 06:28:17 +02:00
jdgleaver a5a9393b26 (.gitlab-ci.yml) Add Miyoo target (#13088) 2021-10-08 14:28:27 +02:00
Salvador 58e7dd8a1a Add Miyoo target (#12860)
* add miyoo target
2021-10-08 13:53:49 +02:00
twinaphex 3d710db798 input_state_wrapper symbol name was causing collisions with certain
cores on statically linked platforms
2021-10-08 12:50:45 +02:00
twinaphex e39bc07e31 Fix implicit declaration 2021-10-08 06:57:37 +02:00
Autechre 00a5b5411f Merge pull request #13081 from gblues/gblues/osx-hid-gca
Get the WIIU GCA working on Mac OSX
2021-10-07 16:23:01 +02:00
Autechre 2e4d135704 Merge pull request #13079 from jdgleaver/api-set-core-option-value
Add enviroment callback to enable cores to notify the frontend that a core option value has changed
2021-10-07 15:18:00 +02:00
Nathan Strong ea249b3827 Get the WIIU GCA working on Mac OSX
== DETAILS
The GCA uses a weird HID class that our current filters don't
catch, so we add it.

Needed to do a small amount of tweaking on the GCA driver to
account for iohidmanager weirdness.
2021-10-06 23:11:22 -07:00
Autechre 3f179a5762 Merge pull request #12632 from Sunderland93/remove-xdg-shell-v6
[Wayland] Remove xdg-shell-v6 protocol
2021-10-07 05:10:53 +02:00
jdgleaver 534f8da487 Add enviroment callback to enable cores to notify the frontend that a core option value has changed 2021-10-06 16:45:14 +01:00
Autechre 54cbeecbb7 Merge pull request #13075 from libretro/move-more-code-to-input-driver
Move more code over to input_driver.c
2021-10-06 12:38:21 +02:00
Autechre a611469f94 Merge pull request #13076 from gblues/gblues/ds3-osx-crash-fix
Fix crash when connecting DS3 to Mac
2021-10-06 09:05:35 +02:00
Nathan Strong 01e96585a3 Fix crash when connecting DS3 to Mac
== DETAILS
The OSX HID driver doesn't implement `set_protocol()` and crashes
with an NPE, so we guard it.
2021-10-05 23:57:09 -07:00
Autechre 6739cf66ca Merge pull request #12572 from john-parton/feature/tinyalsa-opendingux
Enable tinyalsa for the RG350
2021-10-06 07:58:37 +02:00
twinaphex 682d45379c Buildfix 2021-10-06 06:03:33 +02:00
twinaphex 61ee2274e6 Move more code over to input_driver.c - BSV code in particular but
also input state function callbacks - retroarch.c code size reduced
to 874Kb
2021-10-06 05:57:39 +02:00
twinaphex 55bf2b0083 (input/connect) Style nits 2021-10-06 02:52:19 +02:00
twinaphex f81a231481 (joypad_connection) Cleanups - get rid of warning for old-style function
definition
2021-10-06 02:28:55 +02:00
Autechre f242ef6a7c Merge pull request #13073 from gblues/gblues/wiiu-unified-hid
Gblues/wiiu unified hid
2021-10-06 02:25:08 +02:00
twinaphex f4734d223c Another buildfix 2021-10-05 22:57:49 +02:00
Autechre 16b82a05e5 Merge pull request #13071 from IlDucci/ps2restypofix
Fixing a string typo in PR #13068
2021-10-05 22:44:37 +02:00
twinaphex 376b7a622c Fix NGC/Wii builds 2021-10-05 22:18:08 +02:00
Nathan Strong e8ec65ecf7 squelch format warning 2021-10-05 19:05:12 +00:00
Nathan Strong 3e91e3fbc9 fix up non-wiiu side of ifdefs for ds3 2021-10-05 18:15:19 +00:00
Nathan Strong 002c9a30c0 Implement button() for most HID drivers
== DETAILS
The HID drivers in `input/connect/` were missing an implementation
for button(), so I added it. The only exception is the wii driver,
which is really complicated and more than I wanted to try to tackle--
especially since WIIU has its own wiimote drivers.
2021-10-05 17:43:03 +00:00
Nathan Strong e02e345a28 Make GCA driver compatible with other HID drivers
== DETAILS
Use a little trickery to ensure the GCA driver continues working
with other HID implementation.

I've expanded the joypad implementation to support multi-pad devices.
However, this requires changes to each HID implementation to actually
function.

I've made the necessary changes for WIIU, but I don't have the means
of making the change in the other HID implementations.

So, I've built in a backwards-compatibilty mode for the driver.

The trick is to have an identifier byte at the top of both data structs
that the driver returns. We can then use that byte to determine which
of the structs has been passed to the pad functions and act accordingly.

In the GCA case, for non-wiiu platforms, it will simply expose port 1
of the GCA and the other 3 ports do nothing.
2021-10-05 09:47:03 -07:00
IlDucci b46daac334 Adding a missing ending period. 2021-10-05 18:38:22 +02:00
Nathan Strong 2715b4c9c0 get gamecube adapter working 2021-10-05 09:23:08 -07:00
Nathan Strong c832828ddb Figured out the cause of crash
== DETAILS
cause of crash: trying to deference init when it's null
the reason it was going into deregister: the HID/VID lookup was
failing because it wasn't getting initialized first
cause of 2nd crash: the "end of pad list" method looked for an entry
with a magic value, so we add an end marker
2021-10-05 09:23:08 -07:00
Nathan Strong a4d8ce7753 Try to support multi-pad HID devices
== DETAILS
I tried to modify the joypad connection interface to support
multi-pad HID devices ... it doesn't work. I'm not sure why.
2021-10-05 09:23:08 -07:00
Nathan Strong 9846ebb171 enable GCA adapter, minor cleanup
== DETAILS

I'm going to need to re-implement the abstraction between HID device
and gamepad; the changes here lay down some foundation for that work.

- reduce logging priority of some statements I modified while debugging
- factor out the pad driver lookup into its own method
- fix so the pad driver list isn't re-initialized every invocation
- add the button() method for the GCA driver
2021-10-05 09:23:08 -07:00
Nathan Strong 5da1cd08ff Unify the HID driver architecture
== DETAILS
When I first implemented the Wii U HID architecture, I ended up
having to design my own implementation because, at the time, I did
not have a way to read the HID device string to allow the existing
code to successfully detect the gamepad.

After spending some time experimenting, I've figured out how to
do this. And that means I can better align the HID driver with other
platforms.

change summary:

- create a single state structure for all three sub-types of wiiu pads
  (kpad, wpad, and hid)
- eliminate confusing duplicate pad lists
- eliminate confusing duplicate HID pad drivers (ds3, gamecube
  adapter, etc)
- ensure the ds3 driver still works
2021-10-05 09:23:08 -07:00
Nathan Strong 9edb449471 wip commit 2021-10-05 09:10:41 -07:00
IlDucci 41a9c46846 Fixing a string typo in PR #13068 2021-10-05 15:18:19 +02:00
Autechre a264cad19a Merge pull request #13068 from fjtrujy/ps2/change_res
Change Resolution for PS2 platform
2021-10-05 12:42:07 +02:00
Jean-André Santoni e839cf8434 Fix indentation in xmb.c 2021-10-05 11:29:48 +07:00
twinaphex 7e6a56dafc Show Windows 11 version string 2021-10-05 04:37:44 +02:00
Francisco Javier Trujillo Mata bc5a99ae34 Fix available resolution options and improve scaling together with pixel perfect 2021-10-04 23:53:55 +02:00
Francisco Javier Trujillo Mata 52a939bc2f Add ps2sdk folders to vscode config 2021-10-04 23:53:55 +02:00
Francisco Javier Trujillo Mata 9f96723dd0 Adding proper translations for changing resolution 2021-10-04 23:53:55 +02:00
Francisco Javier Trujillo Mata 3bbfcf7b39 Adding to get_video_output_size 2 parameters for additional info 2021-10-04 23:53:55 +02:00
Francisco Javier Trujillo Mata 216675919b Add PS2 Support for changing resolution and offset 2021-10-04 23:53:55 +02:00
Francisco Javier Trujillo Mata c8a46e6e69 Add option for change video windows offsets, from video output 2021-10-04 23:53:54 +02:00
Autechre 69ab4eee7a Merge pull request #13069 from jdgleaver/gitlab-msvc-env
(.gitlab-ci.yml) Remove unnecessary 'env.exe' commands from MSVC builds
2021-10-04 18:46:46 +02:00
jdgleaver e193f92cfd (.gitlab-ci.yml) Remove unnecessary 'env.exe' commands from MSVC builds 2021-10-04 15:53:34 +01:00
Autechre 2c355419bd Merge pull request #13066 from 3rd-fork/master
Remove usage of winrt storage files from uwp version
2021-10-03 23:12:28 +02:00
Autechre 24484e72d2 Merge pull request #13061 from libretro/put-back-scaler-object
Put scaler_ctx back in screenshot_state
2021-10-02 05:18:38 +02:00
twinaphex 6a4a5ae27c Put scaler_ctx back in screenshot_state 2021-10-02 04:19:46 +02:00
Autechre c38479d593 Merge pull request #13059 from IlDucci/translationsupdatewithscript
Fetch translations from Crowdin 01-Oct-2021
2021-10-02 02:26:55 +02:00
IlDucci cd8396edd4 Fetch translations from Crowdin 01-Oct-2021 2021-10-01 23:32:17 +02:00
p-sam 54d2ac9f43 libnx: Splitted Joycons button mapping
- Minus/Plus is always Plus when splitted (JOYPAD_START)
- StickR/StickL is always StickL when splitted (JOYPAD_L3)
2021-10-01 20:18:54 +02:00
Autechre 5a40d28f8f Merge pull request #13055 from libretro/fix-cheevos-regression
Fix Cheevos regression
2021-10-01 19:00:03 +02:00
twinaphex 732c38cc0b Fix Cheevos regression 2021-10-01 16:19:50 +02:00
Tunip3 be7d6832d3 strip out winrt storagefiles 2021-10-01 09:58:17 +01:00
Autechre f5a5a993ff Merge pull request #13054 from libretro/get-rid-of-getters-setters
Get rid of input_event_get_osk_ptr/get_osk_grid
2021-10-01 07:56:11 +02:00
twinaphex fde3406d1b Get rid of input_event_get_osk_ptr/get_osk_grid 2021-10-01 07:37:33 +02:00
Autechre 8807e2957e Input refactors pt3 (#13053)
* Move more internal state over to input_driver.c and menu_driver.c -
retroarch.c now down to 893kb
- Remove now unused p_rarch pointers in functions
2021-10-01 07:18:30 +02:00
Autechre bd76388fc5 Merge pull request #13048 from 3rd-fork/master
Make uwp vfs file implementation more like win32
2021-10-01 01:26:18 +02:00
Autechre 5d71138fd8 Merge pull request #13052 from libretro/input-refactors-pt2
Input refactors pt2
2021-10-01 01:25:40 +02:00
twinaphex b674b5362d Small cleanup - this macro is no longer used 2021-10-01 00:44:47 +02:00
twinaphex e9a4e811ac Move more code and variables from rarch_state out to input_driver
and menu_driver
2021-10-01 00:41:50 +02:00
Autechre 2d279df6e4 Merge pull request #13049 from libretro/input-refactor
Input refactor
2021-09-30 23:55:15 +02:00
twinaphex b4f09f7a55 Fix some header includes 2021-09-30 23:31:54 +02:00
twinaphex 49fbed2423 Get rid of input_mouse_grabbed - move retroarch types to
retroarch_types.h
2021-09-30 23:22:50 +02:00
twinaphex 878ad88e5b Buildfix 2021-09-30 21:34:36 +02:00
twinaphex 12c81bc073 Replace input_state_get_ptr call 2021-09-30 21:31:37 +02:00
twinaphex dbe414e1e1 move input_poll_overlay to input_driver.c 2021-09-30 21:29:35 +02:00
twinaphex ddceb51f89 Get rid of some needless getters/setters 2021-09-30 21:10:12 +02:00
twinaphex ef875f6102 Create input_state_get_ptr - move to input_driver.c -
also moved over the functions that had a dependence on this
state - retroarch.c reduced to 979kb now
2021-09-30 20:54:56 +02:00
Tunip3 d85919d0e3 delete functions that were commented out 2021-09-30 18:59:20 +01:00
Autechre 076440987b Merge pull request #13047 from libretro/fix-blargg-warning
Fix blargg warning + some cleanups
2021-09-30 19:30:19 +02:00
Autechre db6af919fb Merge pull request #13046 from libretro/gfx-thumb-move-state
Refactor - move gfx_thumb_state to gfx_thumbnail.c
2021-09-30 18:32:44 +02:00
twinaphex 689487dbee Fix blargg warning + some cleanups 2021-09-30 18:20:29 +02:00
twinaphex e13073c411 move gfx_thumb_state to gfx_thumbnail.c 2021-09-30 18:05:00 +02:00
Autechre 6a152f8917 Merge pull request #13045 from libretro/core-backup-warning
Fix warning in core_backup.c
2021-09-30 17:57:39 +02:00
Autechre 1d2a2adb61 Merge pull request #13044 from libretro/disp_refactors
Gfx_display refactors
2021-09-30 17:42:09 +02:00
twinaphex a0955d4fa6 Fix potentially bad regression - would crash on any platform where unsigned long is more than 32 bits (not sure if any platform has this, however) 2021-09-30 17:19:38 +02:00
twinaphex b1410c72e5 - Move disp_get_ptr to gfx_display.c
- Move menu_driver_init to menu_driver.c, and turn
menu_driver_init_internal into static function
2021-09-30 17:14:26 +02:00
Autechre d819251ffd Merge pull request #13043 from libretro/refactors
Refactors - moves dispwidget_get_ptr to gfx_widgets
2021-09-30 16:49:52 +02:00
twinaphex d39ea61109 Add HAVE_SCREENSHOTS ifdef 2021-09-30 15:55:31 +02:00
twinaphex b07d80efe1 gfx_widgets.h - add RETRO_BEGIN_DECLS/RETRO_END_DECLS 2021-09-30 15:29:57 +02:00
twinaphex 5ba8843354 Move dispwidget_get_ptr over to gfx_widgets.c 2021-09-30 04:40:15 +02:00
twinaphex 0e9b2179af move scaler object out of screenshot_task_state 2021-09-30 02:19:16 +02:00
twinaphex efe34f52af (gl_common.c) Add HAVE_CONFIG_H 2021-09-29 17:48:58 +02:00
twinaphex b5190b3662 Add glsym/glsym.h header for gl_common.c 2021-09-28 16:28:56 +02:00
twinaphex cc2fea4c85 (MSVC2019/D3D9) D3D9 works now - HAVE_HLSL and HAVE_D3DX both set now 2021-09-28 15:50:15 +02:00
twinaphex 4f8ca90dd0 Move code over to gfx/video_driver.c 2021-09-28 15:29:05 +02:00
twinaphex 0364a277e4 Fix function declaration 2021-09-28 15:22:33 +02:00
twinaphex 4c419466e6 Cleanups 2021-09-28 15:19:08 +02:00
twinaphex 9bb2359a86 More naming consistency changes - take 'retroarch_' prefix out of
functions that don't touch p_rarch state
2021-09-28 13:48:49 +02:00
twinaphex f90809d754 Move data out of retroarch_data.h and into retroarch.c 2021-09-28 13:02:14 +02:00
twinaphex e886e908d5 Create consistent naming conventions - use retroarch_ instead
of rarch_ for some functions for all functions coming from retroarch.h
2021-09-28 12:56:10 +02:00
twinaphex e4bec6739c Move code over to menu_driver.c 2021-09-28 12:07:29 +02:00
twinaphex 8ef9065c86 Get rid of menu_driver_is_alive - we don't want these one/two-line getters/setters anymore 2021-09-28 10:27:00 +02:00
twinaphex e31fbb8048 Move menu_driver_alive to menu_state 2021-09-28 10:11:13 +02:00
twinaphex 1e29ba3cd6 Move menu_driver_is_binding to menu_state 2021-09-28 09:52:46 +02:00
twinaphex 9e26012751 Move menu_driver_init_internal to menu_driver.c 2021-09-28 09:32:11 +02:00
twinaphex 9727be4de6 Cleanup 2021-09-28 04:03:15 +02:00
twinaphex 6a72403f0f (MSVC) Define HAVE_D3DX when HAVE_HLSL is defined 2021-09-28 03:37:08 +02:00
twinaphex 774dccca7c Move more code over to gfx/video_driver.c 2021-09-28 02:15:11 +02:00
twinaphex 3dee62ce62 Cleanups and buildfix 2021-09-28 01:16:53 +02:00
twinaphex 05e4aa8bfb move more code over to gfx/video_driver.c 2021-09-28 00:50:48 +02:00
twinaphex 4574a58683 (video_driver.c) Move some code over 2021-09-27 20:31:31 +02:00
twinaphex 0448afab96 Move video driver functions over to gfx/video_driver.c 2021-09-27 19:37:22 +02:00
twinaphex c3afd4b1a5 Buildfix for Emscripten 2021-09-26 23:07:51 +02:00
twinaphex e8dbcd4600 Fix griffin_cpp.cpp 2021-09-26 22:59:32 +02:00
twinaphex 31eaeb1a03 Create gl_flush 2021-09-26 22:28:28 +02:00
twinaphex 422e940bc4 Fix gl_common.h 2021-09-26 22:22:20 +02:00
twinaphex d4af68d2dd Add glsym/rglgen.h for x_ctx.c 2021-09-26 22:16:18 +02:00
twinaphex 76db3e02cf Create gl_clear 2021-09-26 22:10:53 +02:00
twinaphex 4aafbf2340 Create gl_common.c/gl_common.h 2021-09-26 19:57:08 +02:00
twinaphex 4b5951bda3 Rename gl_common.h to gl2_common.h and remove some file dependencies
on it
2021-09-26 17:42:12 +02:00
twinaphex 6f36e0a2dd Rename GL driver files + add some comments to D3D drivers - gl_core
becomes gl3, gl becomes gl2, etc
2021-09-26 14:16:09 +02:00
twinaphex 2a4862ad8d Rename mimpapgen_sm5.h to mipmapgen_sm5.h 2021-09-26 13:30:50 +02:00
twinaphex 8fa1f998c5 Move d3d9 headers to gfx/include/d3d9 2021-09-26 12:49:53 +02:00
twinaphex 0e21365be1 (MSVC) Add HAVE_HLSL to MSVC targets 2021-09-26 12:30:27 +02:00
twinaphex bbbc4452d7 (MSVC 2010) Add HAVE_HLSL 2021-09-26 09:48:57 +02:00
twinaphex ee97c2066a Make sure this is no longer a function behind a ifdef - too much
maintenance chores
2021-09-26 02:47:43 +02:00
twinaphex 89968333a4 Attempt to fix Mac build 2021-09-26 02:38:57 +02:00
Autechre 12540d750d Merge pull request #13037 from gblues/gblues/wiiu-fix-warnings
WIIU: Clean up a bunch of compiler warnings
2021-09-26 00:57:02 +02:00
MajorPainTheCactus e08cc6e260 Fixed up the d3d9 driver (#13038)
* Fixed d3d9 mvp matrix issue

* Fixed up the d3d9 driver to display the game now
2021-09-26 00:19:45 +02:00
Nathan Strong fb86ca6e33 Fix the snprintf warnings for everyone this time
== DETAILS
So, basically this back-and-forth is because we used fixed-size
data types (i.e. `uint32_t`) which maps to different primitive data
types on different platforms. So `uint32_t` might be a `long` on some
platforms (e.g. Wii U), while it's just a plain integer on others (PC).
And the format specifier works off primitive data type, not data type
size.

So, to resolve this, we:

- keep `%lx` as the format specifier
- cast the parameter to printf to unsigned long

This is better than the alternatives that could cause problems trying to
cast a long down to an int.
2021-09-25 15:08:34 -07:00
Nathan Strong a3241aa9b2 fix missing semicolon 2021-09-25 14:03:29 -07:00
Nathan Strong 9b2d4236ad WIIU: Clean up a bunch of compiler warnings
== DETAILS
These changes fall into a few broad categories:

1. Explicitly undefine things we want to re-define due to conflicts with
   the version of devkitpro we're using
2. Clean up hex format specifiers to use `%lx` or `%lX` when working with
   long integers
3. Move variables inside the ifdef they're used in to squelch "unused variable"
   messages
4. Add parenthesis to make Wii U shader declarations stop complaining

And then there's a weird "misleading indent" warning that I fixed by just
rewriting a block of code to use a switch statement instead of if-then-else.

These changes work fine on Wii U, but we'll need to keep an eye on CI/CD to see
if other platform builds break.
2021-09-25 13:25:39 -07:00
Tunip3 9d25ba7ac5 reimplent vfs files without using storagefile 2021-09-25 17:44:25 +01:00
Ömercan Kömür 714cfc581d android launcher logo (#13035)
This will fill the corners on the homescreen
2021-09-25 11:39:44 +02:00
grant2258andgrant2258 a327fdb6fe add mouse relative check and set appropiatley to fix issue (#12994)
* re add this after failed rebase

* update

* temp fix for device friendly naming as it is for testing

* add device friendly names in the appropiate place

* add/remove hotplug dev to ra input mouse port list

Co-authored-by: grant2258 <[email protected]>
2021-09-24 18:31:20 +02:00
Ben Hamilton (Ben Gertzfield) 1970786932 New feature: Use gamepad combo to quit Retroarch (#13017)
* Refactor menu toggle combo button logic to allow quit combo button

* Quit gamepad combo

* Fixes from @jdgleaver
2021-09-24 18:30:46 +02:00
jdgleaver 50bb7afa9d (.gitlab-ci.yml) Detect MSVC build errors 2021-09-24 12:39:20 +02:00
jdgleaver f52fbd32a0 (libretro-common/file_stream) Restore missing filestream_scanf() function 2021-09-24 12:12:52 +02:00
markwkidd 7b020f4cc5 correct vscode gitignore typo (#13029) 2021-09-23 18:40:26 +02:00
M4xw 6cadd47679 Lets not expect every vscode user on windows to use msys
They can change it locally
2021-09-23 13:45:22 +02:00
M4xw 931eb3221b [LIBNX] Fix Split Joycon 2021-09-23 13:45:22 +02:00
twinaphex 1ff024be26 Don't do rotate_z call for every draw_texture_slice call 2021-09-21 21:38:07 +02:00
twinaphex ecdf20ea49 Remove unused gfx_display_draw_polygon 2021-09-21 21:13:46 +02:00
twinaphex 6eeebeab25 Get rid of gfx_display_set_msg_force 2021-09-21 21:10:38 +02:00
twinaphex 522dd72bd0 Try to silence libnx warning (-Wstringop-overflow) 2021-09-21 19:20:21 +02:00
twinaphex 83ce4259a0 Have only one getter for runloop_state 2021-09-21 19:08:26 +02:00
twinaphex 550d3fa766 Create new header runloop.h 2021-09-21 18:38:53 +02:00
twinaphex f21641d898 Get rid of another 'getter' function 2021-09-21 18:30:56 +02:00
twinaphex 1b7dea7e8e Move code over to menu_driver.c 2021-09-21 18:14:01 +02:00
twinaphex c42f932c3f Moved code over to menu_driver.c 2021-09-21 18:04:48 +02:00
twinaphex 33f075191d Silence warning for libnx 2021-09-21 17:53:50 +02:00
twinaphex a950bfbe3e remove unused variable 2021-09-21 17:38:07 +02:00
twinaphex f11f892076 Put retroarch_apply_shader_preset behind ifdef 2021-09-21 17:31:51 +02:00
jdgleaver 6c5e17e5ae Fix file_stream_transforms:rfscanf() (#13023) 2021-09-21 17:04:34 +02:00
twinaphex b87bc46064 Add missing header for Android 2021-09-21 17:00:58 +02:00
twinaphex 7c8c53fb2d Get rid of menu_driver_get_ptr - we are going to be using only one
getter for each component state instead of several getters
2021-09-21 07:14:27 +02:00
twinaphex 44012ace47 move more menu state over to menu_driver.c 2021-09-21 06:05:25 +02:00
twinaphex 28e0b669d2 (menu) move more state over 2021-09-21 05:44:53 +02:00
twinaphex 58bc88d433 Move menu_driver_state over to menu_driver.c and move it out of
p_rarch
2021-09-21 05:33:46 +02:00
twinaphex 30353ac8f2 move more code out of retroarch.c/retroarch_data.h and into
menu_driver.c
2021-09-21 05:11:39 +02:00
twinaphex d68a138250 Move more menu state to menu_state_t - and move code from
retroarch.c to menu_driver.c
2021-09-21 04:51:38 +02:00
twinaphex c4b8fab0d0 Move menu_input_state to menu_state 2021-09-21 04:20:04 +02:00
twinaphex beea0e2c8d Fix header include 2021-09-21 00:52:05 +02:00
twinaphex f3b2e233bb Move more code to menu_driver.c 2021-09-21 00:51:15 +02:00
twinaphex abebf4a421 Cleanups 2021-09-21 00:41:52 +02:00
twinaphex ec55f8188a Move code out of retroarch.c and into menu/menu_driver.c 2021-09-21 00:12:26 +02:00
twinaphex e2e236f1bf Create menu_state_get_ptr() 2021-09-21 00:00:50 +02:00
twinaphex 94b5769375 Cleanups 2021-09-20 21:21:54 +02:00
twinaphex d2af43d457 Cleanups 2021-09-20 21:08:53 +02:00
twinaphex 295aa84a9e Cleanups 2021-09-20 20:43:05 +02:00
twinaphex fabdede667 Move anim_get_ptr to gfx_animation.c 2021-09-20 20:17:53 +02:00
twinaphex c412ecf7e9 Buildfix 2021-09-20 15:54:07 +02:00
twinaphex fa00455af1 Address feedback 2021-09-20 15:43:57 +02:00
Autechre cbfa8d6400 Move coreinfo_get_ptr internal state back to core_info.c (#13020) 2021-09-20 15:43:27 +02:00
twinaphex f587d28a0d Buildfix 2021-09-20 08:09:43 +02:00
twinaphex 9b5a60af53 Move location driver code to separate file 2021-09-20 06:26:14 +02:00
twinaphex 238eb649a2 Split up midi_driver code to midi_driver.c 2021-09-20 03:43:37 +02:00
twinaphex 5eb795bf5b (widgets) Get rid of dead code 2021-09-20 02:21:05 +02:00
Autechre ebe0d89de2 Update CHANGES.md 2021-09-19 05:35:20 +02:00
Autechre a64fa9c8d7 Update CHANGES.md 2021-09-19 05:24:24 +02:00
twinaphex d11ffdbb6b Bump version 2021-09-19 05:19:36 +02:00
Autechre b71d34068b Update CHANGES.md 2021-09-19 05:12:15 +02:00
gblues ae617c0ee6 Update some Wii U development metadata (#13013)
== DETAILS
- add a `WiiU` IntelliSense configuration for vscode
- rewrite the `net_listen.sh` script in python because the
  shell script approach just isn't portable enough and doesn't handle
  things like multiple network adapters gracefully at all.
2021-09-19 01:22:59 +02:00
twinaphex b3d724b7a3 Move code out of retroarch.c 2021-09-18 22:05:03 +02:00
twinaphex eb895f9947 move more code out of retroarch.c 2021-09-18 21:14:15 +02:00
twinaphex 1c546cb7fd move more code out of retroarch.c 2021-09-18 21:03:16 +02:00
twinaphex db3f0a8468 Move code out of retroarch.c - move it into
network/netplay/netplay_frontend.c
2021-09-18 06:15:02 +02:00
twinaphex 7c74e035b0 Small cleanups 2021-09-18 06:15:02 +02:00
Víctor "IlDucci 226f5fb456 Fetch translations from Crowdin 17-Sep-2021 (#13007) 2021-09-17 20:23:02 +02:00
tunip3andTunip3 895676430f make dir stuff more like the normal win32 stuff (#13006)
Co-authored-by: Tunip3 <[email protected]>
2021-09-17 17:41:56 +02:00
jdgleaver 0a5bb29c43 (libnx) Enable video filters (#13004) 2021-09-17 14:27:37 +02:00
jdgleaver bae6f8e097 (vfs_implementation.c) Place 'memmap.h' include behind '#if defined(HAVE_MMAP)' guard (#13003) 2021-09-17 14:25:44 +02:00
Autechre 62a66ff0e5 Prevent crash pointed out by LIJI - primary_joypad can be NULL (#13002) 2021-09-17 05:20:09 +02:00
Michael Burgardt d8db234df0 Concatinate some previously truncated strings for easier translation (#12120) 2021-09-16 19:00:14 +02:00
twinaphex 251bfdb302 Buildfix for prior PR 2021-09-16 01:15:36 +02:00
Tony 5aafe9eb0c Add distinct mouse zero index label for drivers that do not support multimouse (#13000) 2021-09-16 01:08:03 +02:00
Mats 6a59dad08c Add compile option to make unix use cwd as env (#12989)
Setting UNIX_CWD_ENV to 1 when compiling with the unix platform will make
the base path for the env the cwd. This is to be able to match the behavior on
Windows.
2021-09-15 21:48:11 +02:00
tunip3andTunip3 249e24fbe7 fix issues where provided paths could sometimes contain a double slash, this would cause issues as path formatting was disabled (#12999)
Co-authored-by: Tunip3 <[email protected]>
2021-09-15 21:44:58 +02:00
MrHuu 70376abe1b (3DS) Add unique ID's (#12996)
add gearboy
add gearcoleco
add gearsystem
2021-09-15 20:21:12 +02:00
jdgleaver 5b13047623 Add 'Picoscale_256x-320x240' video filter (#12997) 2021-09-15 20:20:56 +02:00
gblues 78858a9474 Fix analog inputs on HID devices (#12991)
== DETAILS

File this one under "I'm not sure how this ever worked."

I mean, it did (in 1.8.8). I'm not sure what changed, but ultimately what I did was
a bunch of comparative testing against 1.8.8:

- I confirmed the packet data was still being read successfully
- I confirmed that the axis value being passed into pad->get_axis() had
  not changed
- I confirmed the work done in `gamepad_read_axis_data()` was working the same
  between 1.8.8 and master

With the only difference between 1.8.8 and current being the return value from
`gamepad_read_axis_data()`, I just rewrote the method to work properly, and
also fixed up the default axis mapping.

I tested this with a sixaxis controller and GCA, configuring the analog-to-digital
control override to use the right stick.
2021-09-15 03:30:05 +02:00
MajorPainTheCactus 0e9f246b30 Fixed d3d9 mvp matrix issue (#12984) 2021-09-15 01:17:56 +02:00
jdgleaver 516dcb34d9 (Audio Mixer) Pad sample buffers to prevent potential heap-buffer-overflows when resampling (fixes crash when using 30 kHz menu audio files) (#12987) 2021-09-15 01:17:45 +02:00
twinaphex 868a4bf3fc Fix some warnings; set gfx_white_texture to 0 in deinit function at the
end
2021-09-13 20:52:57 +02:00
twinaphex 90775e7306 Silence warnings/errors 2021-09-13 20:30:22 +02:00
twinaphex 5e4ce74000 Get rid of duplicate code in gfx_widgets -
gfx_display_get_widget_dpi_scale made redundant
2021-09-13 20:21:36 +02:00
twinaphex 490233f3c5 wite_texture is now a static global variable inside gfx_display.c
- no longer referenced outside
2021-09-13 19:55:53 +02:00
twinaphex fe14274b96 Get rid of referencing of gfx_display_white_texture outside 2021-09-13 19:20:43 +02:00
twinaphex fc4d4c53cd Cleanup some references to gfx_display_white_texture and
don't assume NULL == 0 for uintptr_t
2021-09-13 19:07:09 +02:00
twinaphex 3c69a941da Move code over to input_driver.c 2021-09-13 18:33:53 +02:00
twinaphex 2b08ebb677 Cleanups 2021-09-13 18:09:44 +02:00
jdgleaver 12f787547c Add workaround to fix keyboard input when using x11+udev (#12981) 2021-09-13 18:02:40 +02:00
MajorPainTheCactusandtwinaphex 3c6bdfd0d8 Fixed numerous issues with HDR (#12979)
* Fix for warning and fix for incorrect comment

* Fixed contrast to be more correct - now scales from 0-10 linearly and behaves more the way you'd expect it to - changed name to ditch legacy settings users may have
Added ability to skip inverse tonemapper to the shader via the constant buffer using 'inverse_tonemap' - set to 0.0f to skip
Fixed potential bug when swapping between hdr and sdr and the bit depth not being set correctly
Fixed dx11's blend, rasterizer and topology states not being set to the sames when using hdr and leaving the menu - caused issues with PCSX2's Shadow of the Colossus
Added numerous helper functions to help create the correct values to colour the UI - normally the white UI elements should be rendered at paper white not max brightness for various reasons

* Fix stylistic issues - * Don't use camelcase for variables and function names * Use '(void)' for function declarations instead of () in C code * Declare variables at the top of a function or code block * Make sure functions that return a value always have a default return path that is not encapsulated by an else block * Use more unique names for retro_math functions which are less likely to overlap with other libraries' function symbols

Co-authored-by: twinaphex <[email protected]>
2021-09-13 16:54:50 +02:00
Autechre e24440d4a9 Merge pull request #12976 from grant2258/mouse_index
this function is called more than once dont use static
2021-09-13 11:44:28 +02:00
Autechre ed6f33b173 Merge pull request #12978 from 3rd-fork/master
Fix issues when opening file with extra long path name
2021-09-13 00:00:03 +02:00
grant2258 88b15c1b1d this function is called more than once dont use static 2021-09-12 20:58:49 +01:00
Tunip3 2991e82575 fix issue where it would fail to get a handle for a file as the path was too long 2021-09-12 20:26:09 +01:00
twinaphex ad4b51b903 Move cde from retroarch.c to input_driver.c 2021-09-12 19:27:12 +02:00
twinaphex b5138b6122 Move input_config_get_bind_string to input_driver.c 2021-09-12 17:41:00 +02:00
twinaphex ad39b1d115 Simplify osk_update_last_codepoint() 2021-09-12 17:36:22 +02:00
twinaphex 3d303a63df (Ozone) Reduce rotate_z calls 2021-09-12 17:14:03 +02:00
twinaphex c3cd3b34b0 (XMB) Reduce amount of times we call blend_begin/blend_end and
rotate_z
2021-09-12 17:06:59 +02:00
twinaphex 26b9439dbc C89_BUILD buildfix 2021-09-12 16:50:46 +02:00
Autechre cfcd0a7a0d Merge pull request #12795 from sonninnos/video-rate-switch
Automatic PAL/NTSC refresh rate switch where available
2021-09-12 16:15:04 +02:00
twinaphex 1b8d68c6e4 Another buildfix 2021-09-11 18:36:12 +02:00
twinaphex c4cbcb2ff4 Add ifdef around this 2021-09-11 18:22:07 +02:00
twinaphex 2490f6e215 Move code from retroarch.c to video_shader_parse.c 2021-09-11 18:15:35 +02:00
twinaphex f09be107c6 Cleanup some extra ifdefs 2021-09-11 17:56:44 +02:00
Autechre 589c72d9a8 Merge pull request #12966 from IlDucci/doublebeforefix
Fixing a typo at MENU_ENUM_SUBLABEL_MANUAL_CONTENT_SCAN_VALIDATE_ENTRIES
2021-09-11 12:57:25 +02:00
IlDucci 08f75ab195 Fixing a typo at MENU_ENUM_SUBLABEL_MANUAL_CONTENT_SCAN_VALIDATE_ENTRIES 2021-09-10 17:11:55 +02:00
Autechre dcf77c4d1e Merge pull request #12821 from markwkidd/config_h
standardize include paths for config.h
2021-09-10 16:59:15 +02:00
Autechre 27bd9868d7 Merge pull request #12963 from jdgleaver/playlist-refresh
(Playlist Manager) Add 'Refresh Playlist' option
2021-09-09 18:44:42 +02:00
Autechre f34c8865ee Merge pull request #12815 from markwkidd/vscode-fix
[VS Code IDE] set .h file association and add vscode configuration to gitignore
2021-09-09 18:44:09 +02:00
Autechre 84174598a4 Merge pull request #12858 from sonninnos/authors-script
Update AUTHORS.h and script
2021-09-09 18:35:26 +02:00
twinaphex c75bb549e5 Move another function over to menu_driver.c 2021-09-09 17:26:59 +02:00
twinaphex 4830150d22 Move function out of retroarch.c and into menu_driver.c 2021-09-09 17:21:48 +02:00
jdgleaver 6da778b934 (Playlist Manager) Add 'Refresh Playlist' option 2021-09-09 16:18:26 +01:00
twinaphex 8564b4f8e3 Fix compilation problem when HAVE_BSV_MOVIE is not defined 2021-09-09 16:58:52 +02:00
twinaphex 6a310ecfed Move more code to command.c 2021-09-09 16:55:14 +02:00
twinaphex 14cd338b97 Move code from retroarch.c to command.c 2021-09-09 16:31:35 +02:00
twinaphex 9b8145f05d Cleanups 2021-09-09 16:06:57 +02:00
twinaphex a11b1c3b72 (retroarch.c) Cleanups 2021-09-09 16:01:33 +02:00
twinaphex 772282eeec Move menu shader code over to menu_driver.c 2021-09-09 15:33:17 +02:00
twinaphex 28389d30e8 Move some code from retroarch.c over to menu_driver.c 2021-09-09 15:22:12 +02:00
twinaphex 6c79cebc6e Move input_overlay_auto_rotate_ out of retroarch.c and into
input_driver.c
2021-09-09 14:24:42 +02:00
twinaphex 81e7dab159 Move code out of retroarch.c and into input_driver.c 2021-09-09 14:11:46 +02:00
Autechre 49cce025c7 Merge pull request #12952 from DisasterMo/rumble
Rebase 'Add generic rumble gain to input settings' by davidgfnet
2021-09-09 13:52:00 +02:00
Autechre ace9267c7b Merge pull request #12960 from Jamiras/cheevos_cfg_overrides
(cheevos) don't write achievement credentials to overrides
2021-09-09 09:32:56 +02:00
Michael Burgardt 303d17e2e6 Rebase 'Add generic rumble gain to input settings' by davidgfnet 2021-09-08 19:52:32 +02:00
Jamiras f0a3ee6003 don't write achievement credentials to overrides 2021-09-08 11:34:19 -06:00
Jamiras 8a31b732dd disable slowmotion when enabling hardcore mode (#12958) 2021-09-08 18:57:19 +02:00
Tony 51b365b5e3 New regular widget message appearance (#12851) 2021-09-08 18:14:41 +02:00
bulzipke 8018be5c9b Fix ram states to file when core deinit (#12956)
* Fix ram states to file when core deinit

* Fix unterminated state_path
Call CMD_EVENT_RAM_STATE_TO_FILE when CMD_EVENT_UNLOAD_CORE too
2021-09-08 18:01:07 +02:00
twinaphex c9e587a5a7 Move more input code over to input_driver.c from retroarch.c 2021-09-07 14:55:37 +02:00
twinaphex ccbbf45760 retroarch.c - cleanups 2021-09-07 13:55:42 +02:00
twinaphex 276b4fd72c Move more code over from retroarch.c to input_driver.c 2021-09-07 13:08:31 +02:00
twinaphex 67defbcf26 Transfer code over from retroarch.c to input_driver.c 2021-09-07 12:42:03 +02:00
twinaphex 5b1872f6be retroarch.c - some cleanups - retroarch_set_frame_limit - return
value - other cleanups
2021-09-07 12:29:44 +02:00
twinaphex 10782f9abc Cleanups - move code over to menu_driver.c 2021-09-07 11:55:12 +02:00
twinaphex 3a78b46862 Move code to input_driver.c 2021-09-07 10:17:06 +02:00
twinaphex 138afafbb3 generic_menu_entry_action - cleanup 2021-09-07 08:35:27 +02:00
twinaphex 71067d8873 Preinitialize varaibles in video_driver_translate_coord_viewport 2021-09-07 08:11:32 +02:00
twinaphex a0856c9847 Move another function to menu_driver.c 2021-09-07 07:14:27 +02:00
twinaphex 722166cb15 Move functions from retroarch.c to input_driver.c 2021-09-07 07:11:42 +02:00
twinaphex 7c665702a8 Move input_driver_toggle_button_combo to input_driver.c 2021-09-07 06:50:18 +02:00
jdgleaver 1151504fa9 (OpenDingux Beta) Disable OpenAL + minor compilation flag optimisation (#12948) 2021-09-06 16:11:44 +02:00
tunip3andTunip3 5ae7bc2ce2 use findfirst file and manually get all items in a dir to reduce errors and increase access (#12947)
Co-authored-by: Tunip3 <[email protected]>
2021-09-06 14:27:49 +02:00
MrHuu 07600392df (3DS) Add bottom screen idle state (#12942) 2021-09-06 01:16:16 +02:00
MajorPainTheCactus 0ac542f1db Fix for warning and fix for incorrect comment (#12944) 2021-09-06 01:16:01 +02:00
Autechre 36888612eb Reduce gfx_display_rotate_z calls in menu drivers (#12937)
* (Ozone) Take out gfx_display_rotate_z out of ozone_draw_icon -
lots of matrix rotates and multiplies were happening when
just calling it once would suffice

* (MaterialUI) Reduce calls to gfx_display_rotate_z

* (XMB) Cleanup
2021-09-05 03:46:52 +02:00
twinaphex f597138827 Cleanups 2021-09-04 21:40:37 +02:00
twinaphex 623e09dc47 Fix wording 2021-09-04 21:38:33 +02:00
twinaphex b05a0d5aed * Enable HDR for WinRT/UWP (only works on PC UWP for now, won't work on Xbox yet swapchain
issues with both D3D11/12)
* Add sublabel for Expand Gamut
*
2021-09-04 21:36:48 +02:00
MajorPainTheCactusandAutechre 536d18778b Fixed up HDR for UWP/WinRT builds (#12936)
Fixed D3D11 validation warnings
Fixed up technically incorrect labels

Co-authored-by: Autechre <[email protected]>
2021-09-04 21:13:24 +02:00
twinaphex 28d1788e1e (HDR) Add sublabels 2021-09-04 19:59:16 +02:00
Víctor "IlDucci 017f9f8939 Fetch translations from Crowdin 04-Sep-2021 (#12934) 2021-09-04 17:43:20 +02:00
Víctor "IlDucci 916ebb98e7 Fixing a couple of minor typos related to the HDR PR. (#12935) 2021-09-04 17:43:11 +02:00
twinaphex 85c0607696 Add to CHANGES.md 2021-09-04 10:32:43 +02:00
twinaphex 43838dc4ea Bump version 2021-09-04 10:30:46 +02:00
twinaphex f905012376 Simplify float_to_s16/s16_to_float functions for ARM NEON ASM codepath 2021-09-04 00:39:49 +02:00
twinaphex 6d1c0e96a3 Simplify sinc NEON code 2021-09-04 00:35:45 +02:00
Autechre 9a5f4602cc Add intrinsic NEON versions for float_to_s16/s16_to_float (#12933)
* Add intrinsic NEON versions for float_to_s16/s16_to_float courtesy
of davidgfnet

* Define -DDONT_WANT_ARM_OPTIMIZATIONS for resampler sinc - this should
default to intrinsic versions

* Default to ARM NEON intrinsic codepath and make the ASM codepaths
optional by defining HAVE_ARM_NEON_ASM_OPTIMIZATIONS

* (Pkg/apple/Android) Take out ASM files being compiled in
2021-09-04 00:25:21 +02:00
twinaphex 19f4504943 Prevent collision with quasi88 in statically linked cores 2021-09-03 21:29:38 +02:00
bulzipke 8adc24ecbc (3DS) Add bottom screen menu (#12470)
* (3DS) Add bottom screen menu
 -> User can save/load state on botom screen with thumbnail.
 -> Call a save_state_to_file() when RAM state has data to write a disk.
 -> If the bottom screen needs updating, swap the bottom framebuffers.

Add: SAVE/LODE STATE TO RAM
 -> This is useful for devices with slow I/O
 -> 3DS bottom save state use CMD_EVENT_SAVE_STATE_TO_RAM
 -> 3DS bottom load state use CMD_EVENT_LOAD_STATE when RAM state has no data
 -> 3DS bottom load state use CMD_EVENT_LOAD_STATE_FROM_RAM when RAM sate has data

* Rewrite path_get_state to retroarch_get_current_savestate_path

* Fix unterminated state_path
2021-09-03 18:14:03 +02:00
Autechre 51dcad6cb3 Merge pull request #12932 from jdgleaver/cheat-search
Add enhanced search functionality to the 'Cheats' menu
2021-09-03 17:03:58 +02:00
Autechre 204834f88e Merge pull request #12927 from 3rd-fork/master
code clean up and simplification of uwp vfs driver
2021-09-03 17:03:34 +02:00
Autechre e39784189e Merge pull request #12772 from DisasterMo/core_option_translation
New example_translation core options sample
2021-09-03 16:59:42 +02:00
Autechre 87b40b7c57 Merge pull request #12930 from bslenul/master
Update menu toggle combo list in retroarch.cfg
2021-09-03 16:49:13 +02:00
Autechre 588c1305c8 Merge pull request #12931 from jdgleaver/runahead-cheats
Fix cheats when using second instance runahead
2021-09-03 16:48:30 +02:00
jdgleaver 508b0c2ee2 Add enhanced search functionality to the 'Cheats' menu 2021-09-03 14:58:33 +01:00
jdgleaver 743aea1810 Fix cheats when using second instance runahead 2021-09-03 11:27:12 +01:00
bslenul 76f114a9fe Update menu toggle combo list 2021-09-03 12:10:05 +02:00
twinaphex 274638b89e (D3D11) Look at D3D11 feature level - if we are 11.0 or above,
we use Shader Model 5.0 instead of the default SM 4.0 - this fixes
FSR on D3D11 which requires SM5.0
2021-09-03 07:51:44 +02:00
twinaphex b900555494 (D3D11) Add logging after device creation so we can see which
feature level it used
2021-09-03 07:15:53 +02:00
twinaphex a0e4d64c3b menu_bind_state struct definitions need to be moved over to menu_input.h 2021-09-03 06:48:06 +02:00
twinaphex 93dbd746db (Android) Buildfix 2021-09-03 06:31:40 +02:00
Autechre 7b9cbc08d7 Add HDR support for D3D12 (rebased PR from MajorPainTheCactus) (#12917)
* Add HDR support

* Attempt to fix Mingw build and Metal builds

* (D3D12) Fix relative header includes

* Add missing hdr_sm5.hlsl.h

* (d3d12_common.c) Some C89 build fixes

* Fix MSVC build

* - Attempt to fix build on mingw/msys unix with dirty hack
- Fix shader compilation of hdr_sm5.hlsl.h on MSVC/Visual Studio -
the define was seen as an error and was causing the first pipeline
to error out
- Make sure we manually set handle of backBuffer to NULL

* Moving the release of the texture above the freeing of desc.srv_heap
and desc.rtv_heap solves the hard crashes on teardown/setup in RA -
it was crashing hard in d3d12_release_texture before

* Add HAVE_D3D12_HDR ifdef - needs to be disabled for WinRT for now
because of several things that are Windows desktop-specific right now
(GetWindowRect)

* Add dirty GUID hack - should work for both mingw/msys on Windows/Linux
as well as MSVC/Visual Studio (hopefully)

* Change HAVE_D3D12_HDR to HAVE_DXGI_HDR

* Move away from camelcase named variables

* Fix RARCH_ERR logs - they need a newline at the end

* d3d12_check_display_hdr_support - make it return a bool on return
and set d3d12->hdr.support and d3d12->hdr.enable outside of the
function

* (DXGI) Remove D3D12 dependencies from dxgi_check_display_hdr_support and
move it to dxgi_common.c instead

* (DXGI) move d3d12_swapchain_color_space over to dxgi_common.c and
rename it dxgi_swapchain_color_space

* (DXGI) move d3d12_set_hdr_metadata to dxgi_common.c and
rename it dxgi_set_hdr_metadata

* (DXGI) dxgi_check_display_hdr_support - better error handling?

* Fix typo

* Remove video_force_resolution

* (D3D12) Address TODO/FIXME

* (D3D12) Backport
https://github.com/libretro/RetroArch/pull/12916/commits/c1b6c0bff2aa33cde035b43cb31ac7e78ff2a07a
- Fixed resource transition for present when HDR is off
Fixed cel shader displaying all black as blending was enabled when the hdr shader was being applied - turned off blending during this shader

* Move d3d12_hdr_uniform_t to dxgi_common.h and
rename it dxgi_hdr_uniform_t

* (D3D11) Add HDR support

* Add TODO/FIXME notes

* Cache hdr_enable in video_frame_info_t

* Update comment
2021-09-03 06:15:25 +02:00
Tunip3 9228a6f8ab disable cpu model check on xbox as it doesn't work and can even crash the app for some users 2021-09-02 18:21:16 +01:00
Michael Burgardt f6f7d145d2 Add core options translation scripts 2021-09-02 19:07:28 +02:00
twinaphex 868865c388 Include "config.h" before including msg_hash.h - we were
getting a crash at startup of the Qt desktop interface because
we didn't do this
2021-09-02 01:12:24 +02:00
Autechre ad01f5d5b6 Merge pull request #12923 from jdgleaver/mixer-reinit
Ensure than menu sounds are re-enabled when calling CMD_EVENT_AUDIO_REINIT
2021-09-01 19:10:53 +02:00
jdgleaver 48d9df6bb7 Ensure than menu sounds are re-enabled when calling CMD_EVENT_AUDIO_REINIT 2021-09-01 17:59:46 +01:00
Autechre 11b88c748e Merge pull request #12921 from jdgleaver/menu-sounds-fix
Fix menu sounds (audio mixing) when using the 'sinc' resampler with quality lower than 'normal'
2021-09-01 17:57:34 +02:00
jdgleaver 547f04b894 Fix menu sounds (audio mixing) when using the 'sinc' resampler with quality lower than 'normal' 2021-09-01 15:55:58 +01:00
sonninnos 19602d394f Update AUTHORS.h and script 2021-08-31 22:42:31 +03:00
twinaphex 9ea6f15c1d (Ozone) Forgot to add ozone.c file 2021-08-31 18:43:58 +02:00
twinaphex d0d495edc3 Combine all ozone files into one - discussed internally first -
allows us to modify the scope of the global variables from public
to static - also allows for easier refactors amongst
XMB/materialui/Ozone/RGUI later
2021-08-31 18:42:43 +02:00
twinaphex a785bd8d80 Remove HAVE_STRIPES - unfinished and unusable menu driver right
now
2021-08-31 17:50:24 +02:00
Autechre 256713e888 Merge pull request #12914 from libretro/move-code-over-to-menu-driver
Move lots of menu code over to menu/menu_driver.c
2021-08-31 14:20:42 +02:00
twinaphex fb35460c6d Move more code over 2021-08-31 01:47:57 +02:00
twinaphex 5677799faf Move more code over 2021-08-31 01:27:36 +02:00
twinaphex fc4081cd8f Fix some builds 2021-08-31 00:55:46 +02:00
twinaphex 0db409d5b5 Move lots of menu code over to menu/menu_driver.c - moved at least
44Kb of code over
2021-08-31 00:43:04 +02:00
twinaphex 70ebc85b6c Buildfix for targets with no HAVE_OVERLAY defined 2021-08-30 22:58:53 +02:00
twinaphex dbf3e278dd menu_driver_toggle - cleanups 2021-08-30 22:31:30 +02:00
twinaphex 03c54a9854 Cleanup menu_event and nested functions so that we remove p_rarch
dependencies
2021-08-30 21:59:35 +02:00
twinaphex 8460618666 menu_input_get_mouse_hw_state - horiz mouse wheel up/down were inverted 2021-08-30 21:17:08 +02:00
twinaphex c6f2e52d62 Simplify menu_driver_toggle 2021-08-30 21:11:43 +02:00
twinaphex 7e61c7ab32 Optimize menu_input_get_mouse_hw_state 2021-08-30 20:55:27 +02:00
twinaphex b68ace9e3d Simplify several menu poll functions 2021-08-30 20:46:07 +02:00
twinaphex 37aa13bb47 (X11) get_video_mode - make sure parameter does not hide global
variable of the same name
2021-08-30 18:39:02 +02:00
twinaphex e384c2b099 Fix some warnings in retroarch.c - local variables hiding parameter
of the same name, local variable being unused on one platform because
it's only used within an ifdef, etc.
2021-08-30 18:27:55 +02:00
twinaphex 1bafa70837 Simplify config_load_file - get rid of end label 2021-08-30 17:52:50 +02:00
Autechre 2406894329 Merge pull request #12913 from libretro/move-code-over-to-configuration
Move code in retroarch.c over to configuration file
2021-08-30 17:45:50 +02:00
twinaphex 220dfe4dbf Move code in retroarch.c over to configuration file 2021-08-30 16:52:05 +02:00
twinaphex bfc7e824fe Rmeove some obsolete comments 2021-08-30 16:13:47 +02:00
twinaphex 2f14d2e4e2 Move some command functions over from retroarch.c to command.c - the
other ones have some dependencies on static locals in retroarch.c so
can't be easily transferred over for now
2021-08-30 16:08:50 +02:00
Autechre cd126f0236 Merge pull request #12911 from Jamiras/rcheevos102
(cheevos) upgrade to rcheevos 10.2
2021-08-30 05:19:04 +02:00
twinaphex d2283a5237 Use better already existing race guard 'audio_suspended' instead
of 'video_driver_is_switching_mode'
2021-08-30 05:08:09 +02:00
twinaphex d429ecf304 Safer way of avoiding the race condition in
audio_driver_sample/audio_driver_sample_batch - we can check
is_display_mode_switching to see if we're doing a fs/windowed toggle
(full teardown/setup), no audio should be processed at this point in
time
2021-08-30 04:52:28 +02:00
twinaphex d45945cda2 When audio driver write callback function fails, don't
turn audio off completely - look if audio_driver_output_samples_conv_buf
is non-NULL first before we attempt to write audio
2021-08-30 02:13:19 +02:00
twinaphex 943e14051c Increased safety for non-batched audio sample callback - fixes audio_driver_sample crashing in PCSX2 when toggling fullscreen 2021-08-30 01:54:49 +02:00
Autechre 4b6a82a3b0 Merge pull request #12908 from libretro/input-robustness-for-threaded-cores
Input robustness for threaded cores
2021-08-29 23:00:48 +02:00
twinaphex bf2e7b93f0 (Vulkan) Fix Vulkan validation layer - fix thanks to flyinghead -
see comments
2021-08-29 20:39:22 +02:00
twinaphex 24721e6a1d C89 buildfix for MSVC 2021-08-29 20:37:09 +02:00
twinaphex 0a1affba7a Simplify menu_input_get_mouse_hw_state/menu_input_read_mouse_hw 2021-08-29 19:05:38 +02:00
twinaphex a9f1dd3647 input_driver_poll; remove shadowed variable
menu_input_read_mouse_hw - cleanup + go through local pointer
variable for primary_joypad
2021-08-29 18:41:58 +02:00
twinaphex 540d192ecb Buildfix for Apple + make sure primary_joypad/secondary_joypad goes through local pointers; cut down on HAVE_MFI ifdefs in retroarch.c 2021-08-29 18:34:52 +02:00
twinaphex f1f3998d28 Prevent joypad objects being destroyed before their pointers are being
NULLed. Another thread could access a "half destroyed" object before
2021-08-29 18:06:08 +02:00
twinaphex 46fb61bede input_state_wrap - do not attempt to access joypad or sec_joypad
pointers if non-NULL
2021-08-29 16:57:41 +02:00
twinaphex cf7b30481b Get rid of gfx_widgets_draw_icon_blend - was just a duplicate of
gfx_widgets_draw_icon with blend_begin and blend_end wrapped around it
2021-08-29 15:21:40 +02:00
Brian Weiss 30db7d8cd3 upgrade to rcheevos 10.2 2021-08-28 13:58:33 -06:00
Autechre 2474fe3c2e Updating CODING-GUIDELINES - typo fix 2021-08-28 17:24:32 +02:00
twinaphex 5b3e5f5daa Update CODING-GUIDELINES 2021-08-28 17:22:24 +02:00
Autechre 861cb2953a Merge pull request #12902 from 4th-fork/master
set background colour for splash screen to black
2021-08-28 15:12:23 +02:00
Tunip3 6dfe20e247 set background colour for splash screen to black rather than the default light gray 2021-08-28 13:47:57 +01:00
Tunip3 bb0fe6c2d1 fix extraction issues 2021-08-26 23:18:42 +01:00
Tunip3 45a16fab1b clean up retro_vfs_file_open_impl 2021-08-25 23:12:29 +01:00
Tunip3 8396bd599d strip out unneeded uwp specific file io functions 2021-08-25 15:54:09 +01:00
sonninnos b8188baeaf Automatic refresh rate switch where available 2021-08-21 01:15:41 +03:00
Mark W. Kidd 2b3dfeb10c standardize include path for config.h 2021-08-18 18:54:40 -04:00
Mark W. Kidd d87ae5b5d7 set vscode .h association and gitignore its configuration 2021-08-17 20:30:50 -04:00
John Parton 57bd538996 Enable tinyalsa on OpenDingux
Use same #define pattern to make OpenAL default as alsa branch
2021-07-10 19:20:53 -05:00
Aleksey Samoilov 6bc9181bc9 Remove xdg_shell_v6 from wayland_vk 2021-07-10 14:52:16 +04:00
Aleksey Samoilov b153087fa4 Remove xdg-shell-v6 fom Makefile.common 2021-07-10 14:44:04 +04:00
Aleksey Samoilov 146804fcbc Remove xdg_shell_v6 support 2021-07-10 14:22:58 +04:00
5042 changed files with 681146 additions and 276093 deletions

No files matched your search

+6
View File
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
+39
View File
@@ -0,0 +1,39 @@
name: CI 3DS
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-devkitpro:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile Salamander
run: |
make -f Makefile.ctr.salamander -j$(getconf _NPROCESSORS_ONLN) USE_CTRULIB_2=1 clean
make -f Makefile.ctr.salamander -j$(getconf _NPROCESSORS_ONLN) USE_CTRULIB_2=1
- name: Compile RA
run: |
make -f Makefile.ctr -j$(getconf _NPROCESSORS_ONLN) USE_CTRULIB_2=1 clean
make -f Makefile.ctr -j$(getconf _NPROCESSORS_ONLN) USE_CTRULIB_2=1 HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-3DS-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch_3ds.cia
+36
View File
@@ -0,0 +1,36 @@
name: CI Android
on:
push:
pull_request:
workflow_dispatch:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
cd pkg/android/phoenix
./gradlew assembleDebug
find . -iname "*.apk" -exec ls -l "{}" \;
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch-android-${{ steps.slug.outputs.sha8 }}
path: |
pkg/android/phoenix/build/outputs/apk/normal/debug/phoenix-normal-debug.apk
pkg/android/phoenix/build/outputs/apk/aarch64/debug/phoenix-aarch64-debug.apk
+35
View File
@@ -0,0 +1,35 @@
name: CI DOS/DJGPP
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-djgpp-build-container:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -f Makefile.dos -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.dos -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-DOS-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retrodos.exe
+35
View File
@@ -0,0 +1,35 @@
name: CI Emscripten
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-emscripten:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
emmake make -f Makefile.emscripten -j$(getconf _NPROCESSORS_ONLN) clean
emmake make -f Makefile.emscripten -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-Emscripten-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch.js
+34
View File
@@ -0,0 +1,34 @@
name: CI GameCube
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-devkitpro:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -f Makefile.ngc -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.ngc -j$(getconf _NPROCESSORS_ONLN) EXTERNAL_LIBOGC=1 GX_PTHREAD_LEGACY=0 HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-GameCube-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch_ngc.dol
+40
View File
@@ -0,0 +1,40 @@
name: CI Linux (i686)
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-i386-ubuntu:xenial-gcc9
options: --user root
steps:
- name: Check Out Repo
uses: actions/checkout@v3
- name: Configure Build
run: |
./configure --disable-qt --enable-xdelta
- name: Compile RA
run: |
make -j$(getconf _NPROCESSORS_ONLN) clean
make -j$(getconf _NPROCESSORS_ONLN)
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch_linux_i686${{ steps.slug.outputs.sha8 }}
path: |
retroarch
+55
View File
@@ -0,0 +1,55 @@
name: CI Windows (MSVC)
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
# These jobs run smoke tests to ensure that MSVC-specific builds work properly.
jobs:
msvc:
runs-on: windows-2022
strategy:
matrix:
version: [UWP, 2019, 2022]
configuration: [Debug, Release]
platform: [x64]
exclude:
- version: UWP
configuration: Debug
include:
- version: UWP
configuration: ReleaseAngle
platform: x64
# Qt and Cg builds are excluded for now
steps:
- uses: actions/checkout@v4
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1
- name: Compile RA
working-directory: "${{github.workspace}}/pkg/msvc${{ matrix.version == 'UWP' && '-uwp' || ''}}"
run: |
msbuild -p:"Configuration=${{matrix.configuration}}" -p:"Platform=${{matrix.platform}}" .\RetroArch-msvc${{matrix.version}}.sln
- name: Get short SHA
id: slug
shell: powershell
run: echo "sha8=$('${{github.sha}}'.Substring(0,8))" >> $env:GITHUB_OUTPUT
# https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
- uses: actions/upload-artifact@v4
with:
name: retroarch-${{matrix.version}}-${{matrix.configuration}}-${{matrix.platform}}-${{ steps.slug.outputs.sha8 }}
path: |
${{ matrix.version != 'UWP' }}:
pkg/msvc/${{matrix.platform}}/${{matrix.configuration}}/RetroArch-msvc${{matrix.version}}.exe
${{ matrix.version == 'UWP' }}:
pkg/msvc-uwp/AppPackages/RetroArch-msvcUWP
+30
View File
@@ -0,0 +1,30 @@
name: CI macOS
on:
push:
pull_request:
permissions:
contents: read
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
set -o pipefail
xcodebuild -workspace pkg/apple/RetroArch.xcworkspace -scheme RetroArch -config Release -xcconfig pkg/apple/GitHubCI.xcconfig -derivedDataPath build | xcpretty --color
- name: Get short SHA
id: slug
run: echo "sha8=$(echo ${GITHUB_SHA} | cut -c1-8)" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v3
with:
name: RetroArch-${{ steps.slug.outputs.sha8 }}
path: |
build/Build/Products/Release
+35
View File
@@ -0,0 +1,35 @@
name: CI Miyoo ARM32
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-dingux:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.miyoo clean
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.miyoo
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch_miyoo_arm32${{ steps.slug.outputs.sha8 }}
path: |
retroarch
+41
View File
@@ -0,0 +1,41 @@
name: CI PS2
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-ps2:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile Salamander
run: |
make -f Makefile.ps2.salamander -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.ps2.salamander -j$(getconf _NPROCESSORS_ONLN) release
- name: Compile RA
run: |
make -f Makefile.ps2 -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.ps2 -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1 release
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-PS2-dummy-${{ steps.slug.outputs.sha8 }}
path: |
raboot.elf
retroarchps2.elf
+48
View File
@@ -0,0 +1,48 @@
name: CI PS4/ORBIS
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-orbis:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
apk add ncurses-dev make bash python2
apk add libintl icu-dev wget
wget https://dot.net/v1/dotnet-install.sh && chmod 755 dotnet-install.sh && ./dotnet-install.sh -c 3.0 --install-dir ~/cli
- name: Compile RA
run: |
export PATH=~/cli:$PATH # .net cli
make -f Makefile.orbis -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: bin-${{ steps.slug.outputs.sha8 }}
path: |
retroarch_orbis.elf
retroarch_orbis.oelf
retroarch_orbis.self
- name: Version of binaries
run: |
clang --version
orbis-ld --version
+47
View File
@@ -0,0 +1,47 @@
name: CI PSP
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-psp:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile bootstrap
run: |
cd bootstrap/psp1/kernel_functions_prx
make -j$(getconf _NPROCESSORS_ONLN) clean
make -j$(getconf _NPROCESSORS_ONLN)
- name: Compile Salamander
run: |
make -f Makefile.psp1.salamander -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.psp1.salamander -j$(getconf _NPROCESSORS_ONLN)
- name: Compile RA
run: |
make -f Makefile.psp1 -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.psp1 -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-PSP-dummy-${{ steps.slug.outputs.sha8 }}
path: |
kernel_functions.prx
EBOOT.PBP
+39
View File
@@ -0,0 +1,39 @@
name: CI PSVita
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-vita:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile Salamander
run: |
make -f Makefile.vita.salamander -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.vita.salamander -j$(getconf _NPROCESSORS_ONLN)
- name: Compile RA
run: |
make -f Makefile.vita -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.vita -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1 HAVE_VITAGLES=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-PSVita-dummy-${{ steps.slug.outputs.sha8 }}
path: |
eboot.bin
+35
View File
@@ -0,0 +1,35 @@
name: CI RS90 Odbeta MIPS32
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-dingux:odbeta
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.rs90 clean
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.rs90
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch_rs90_mips32${{ steps.slug.outputs.sha8 }}
path: |
retroarch_rs90_odbeta.opk
+35
View File
@@ -0,0 +1,35 @@
name: CI RetroFW MIPS32
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-dingux:odbeta
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.retrofw clean
make -j$(getconf _NPROCESSORS_ONLN) -f Makefile.retrofw
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch_retrofw_mips32${{ steps.slug.outputs.sha8 }}
path: |
retroarch_retrofw.opk
+34
View File
@@ -0,0 +1,34 @@
name: CI Switch/libnx
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-libnx-devkitpro:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
make -f Makefile.libnx -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.libnx -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-libnx-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch_switch.nro
+39
View File
@@ -0,0 +1,39 @@
name: CI Wii
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-devkitpro:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile Salamander
run: |
make -f Makefile.wii.salamander -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.wii.salamander -j$(getconf _NPROCESSORS_ONLN) EXTERNAL_LIBOGC=1 GX_PTHREAD_LEGACY=0
- name: Compile RA
run: |
make -f Makefile.wii -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.wii -j$(getconf _NPROCESSORS_ONLN) EXTERNAL_LIBOGC=1 GX_PTHREAD_LEGACY=0 HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-Wii-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch_wii.dol
+39
View File
@@ -0,0 +1,39 @@
name: CI WiiU
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-wiiu:latest
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile Salamander
run: |
make -f Makefile.wiiu -j$(getconf _NPROCESSORS_ONLN) SALAMANDER_BUILD=1 clean
make -f Makefile.wiiu -j$(getconf _NPROCESSORS_ONLN) SALAMANDER_BUILD=1
- name: Compile RA
run: |
make -f Makefile.wiiu -j$(getconf _NPROCESSORS_ONLN) clean
make -f Makefile.wiiu -j$(getconf _NPROCESSORS_ONLN) HAVE_STATIC_DUMMY=1
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: RA-WiiU-dummy-${{ steps.slug.outputs.sha8 }}
path: |
retroarch.rpx
+37
View File
@@ -0,0 +1,37 @@
name: CI Windows i686 (MXE)
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-mxe-win32-cross:gcc10
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
export MOC=/usr/lib/mxe/usr/i686-w64-mingw32.shared/qt5/bin/moc
./configure --host=i686-w64-mingw32.shared
make clean
make -j$(getconf _NPROCESSORS_ONLN)
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch${{ steps.slug.outputs.sha8 }}
path: |
retroarch.exe
+37
View File
@@ -0,0 +1,37 @@
name: CI Windows x64 (MXE)
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
container:
image: git.libretro.com:5050/libretro-infrastructure/libretro-build-mxe-win64-cross:gcc10
options: --user root
steps:
- uses: actions/checkout@v3
- name: Compile RA
run: |
export MOC=/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/bin/moc
./configure --host=x86_64-w64-mingw32.shared
make clean
make -j$(getconf _NPROCESSORS_ONLN)
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- uses: actions/upload-artifact@v3
with:
name: retroarch${{ steps.slug.outputs.sha8 }}
path: |
retroarch.exe
+41
View File
@@ -0,0 +1,41 @@
# Download translations from Crowdin and push to GitHub
name: Crowdin Daily Workflow
on:
schedule:
- cron: '0 0 * * *' # every day at midnight
permissions:
contents: read
jobs:
sync:
permissions:
contents: write # for Git to git push
runs-on: ubuntu-latest
steps:
- name: Setup Java JDK
uses: actions/setup-java@v3
with:
java-version: 18
distribution: zulu
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Checkout
uses: actions/checkout@v3
- name: Crowdin Sync
shell: bash
env:
CROWDIN_API_KEY: ${{ secrets.CROWDIN_API_KEY }}
run: |
cd intl
python3 -m pip install requests PyYAML
python3 crowdin_sync.py "$CROWDIN_API_KEY"
git config user.name github-actions
git config user.email [email protected]
git add .
git commit -m "Fetch translations from Crowdin"
git push
+10 -4
View File
@@ -10,18 +10,24 @@ on:
- 'intl/*_us.h'
- 'intl/*_us.json'
permissions:
contents: read
jobs:
sync:
runs-on: ubuntu-latest
steps:
- name: Setup Java JDK
uses: actions/setup-java@v1
uses: actions/setup-java@v3
with:
java-version: 1.8
java-version: 18
distribution: zulu
- name: Setup Python
uses: actions/setup-python@v2
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Crowdin Sync
shell: bash
env:
+33
View File
@@ -0,0 +1,33 @@
# Validates compilation of RetroArch binary
name: RetroArch CI
on:
push:
branches:
- master
pull_request:
branches:
- master
permissions:
contents: read
jobs:
linux-c89: # Smoketest build using most restrictive compiler and default options
runs-on: ubuntu-latest
steps:
- name: Dependencies
run: |
sudo apt-get update -y
sudo apt-get install build-essential libxkbcommon-dev libx11-xcb-dev zlib1g-dev libfreetype6-dev libegl1-mesa-dev libgles2-mesa-dev libgbm-dev nvidia-cg-toolkit nvidia-cg-dev libavcodec-dev libsdl2-dev libsdl-image1.2-dev libxml2-dev yasm
- name: Checkout
uses: actions/checkout@v3
- name: Configure
run: ./configure
- name: Build
run: make C89_BUILD=1
- name: Build Debug
run: |
make clean # making sure we don't have leftovers from previous build
make DEBUG=1 GL_DEBUG=1 C89_BUILD=1
+52
View File
@@ -0,0 +1,52 @@
name: CI webOS
on:
push:
pull_request:
repository_dispatch:
types: [run_build]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check Out Repo
uses: actions/checkout@v4
- name: Download ares-cli-rs
uses: robinraju/[email protected]
with:
repository: "webosbrew/ares-cli-rs"
latest: true
fileName: "ares-package_*.deb"
out-file-path: "temp"
- name: Update packages
run: sudo apt-get -yq update
- name: Install webOS CLI
run: sudo apt-get -yq install ./temp/*.deb
- name: Download webOS NDK
uses: robinraju/[email protected]
with:
repository: "openlgtv/buildroot-nc4"
latest: true
fileName: "arm-webos-linux-gnueabi_sdk-buildroot.tar.gz"
out-file-path: "/tmp"
- name: Extract webOS NDK
shell: bash
working-directory: /tmp
run: |
tar xzf arm-webos-linux-gnueabi_sdk-buildroot.tar.gz
./arm-webos-linux-gnueabi_sdk-buildroot/relocate-sdk.sh
- name: Compile RA
run: |
. /tmp/arm-webos-linux-gnueabi_sdk-buildroot/environment-setup
make -f Makefile.webos ADD_SDL2_LIB=1 -j$(getconf _NPROCESSORS_ONLN)
+37 -13
View File
@@ -1,7 +1,11 @@
*.o
*.obj
*.pdb
*.exe
*.bmpobj
*.binobj
*.so
*.so.*
*.dll
*.a
*.elf
@@ -10,13 +14,14 @@
*.swp
*.cache
*.gcda
*.lcbk
*.gcno
.tmp
.tmp.c
.tmp.cxx
.moc.h
.moc.cpp
config.log
*.log
/.project
/.externalToolBuilders/
/retroarch
@@ -25,8 +30,6 @@ config.log
/retroarch_debug.exe
/config.h
/config.mk
/tools/retroarch-joyconfig
/tools/retroarch-joyconfig.exe
*.ncb
*.sdf
*.opensdf
@@ -94,6 +97,10 @@ database
overlays
playlists
states
cheats
thumbnails
docs/html
system
shaders/shaders_cg
shaders/shaders_glsl
shaders/shaders_slang
@@ -132,6 +139,7 @@ wiiu/wut/elf2rpl/elf2rpl
# CLion
/cmake-build-debug/
.run
# Android
/pkg/android/phoenix/obj/
@@ -152,6 +160,7 @@ wiiu/wut/elf2rpl/elf2rpl
/media/shaders_cg/
/media/libretrodb/
compile_commands.json
pkg/apple/iOS/build/
pkg/apple/build/
ui/drivers/qt/moc_*
@@ -160,23 +169,26 @@ ui/drivers/moc_*
obj-unix/
.vagrant/
/pkg/msvc/Release Cg/*.exe
# Visual Studio
/pkg/msvc/Release Cg/*.iobj
/pkg/msvc/Release Cg/*.ipdb
/pkg/msvc/Release Cg/*.pdb
/pkg/msvc/Release Cg/*.lpl
/pkg/msvc/Release Cg/*.cfg
/pkg/msvc/*.db
/pkg/msvc/.vs
/pkg/msvc/*/.vs
/pkg/msvc/msvc-2010/Release Cg/RetroArc.27FF7CE1.tlog/*.tlog
/pkg/msvc/msvc-2010/Release Cg/RetroArc.27FF7CE1.tlog/*.lastbuildstate
/pkg/msvc/msvc-2010/Release Cg/*.log
/pkg/msvc/msvc-2010/Release Cg/*.obj
/pkg/msvc/msvc-2010/Release Cg/*.res
/pkg/msvc/msvc-2010/Release Cg/*.pdb
*.tlog
*.lastbuildstate
*.FileListAbsolute.txt
*.res
retroarch.cfg
Makefile.local
pkg/msvc/**/ARM
pkg/msvc/**/ARM64
pkg/msvc/**/* Cg
pkg/msvc/**/* QT
pkg/msvc/**/* QT+CG
pkg/msvc/**/x64
# Emscripten artifacts
@@ -198,10 +210,13 @@ retroarch_switch.nro
retroarch_switch.nso
# PS2
ps2/irx/*.c
*.irx
*_irx.c
# Wayland
gfx/common/wayland/fractional-scale-v1.c
gfx/common/wayland/fractional-scale-v1.h
gfx/common/wayland/viewporter.c
gfx/common/wayland/viewporter.h
gfx/common/wayland/idle-inhibit-unstable-v1.c
gfx/common/wayland/idle-inhibit-unstable-v1.h
gfx/common/wayland/xdg-shell-unstable-v6.c
@@ -210,6 +225,12 @@ gfx/common/wayland/xdg-decoration-unstable-v1.h
gfx/common/wayland/xdg-decoration-unstable-v1.c
gfx/common/wayland/xdg-shell.c
gfx/common/wayland/xdg-shell.h
gfx/common/wayland/pointer-constraints-unstable-v1.c
gfx/common/wayland/pointer-constraints-unstable-v1.h
gfx/common/wayland/relative-pointer-unstable-v1.c
gfx/common/wayland/relative-pointer-unstable-v1.h
gfx/common/wayland/viewporter.c
gfx/common/wayland/viewporter.h
# libretro-common samples
libretro-common/samples/streams/rzip/rzip
@@ -225,3 +246,6 @@ param.sfo
*.vpk
/.vs
/deps/SPIRV-Cross/out/build/x64-Debug
# Visual Studio Code
.vscode/
+291 -113
View File
@@ -47,6 +47,7 @@ build-retroarch-windows-x64:
--enforcedir /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/plugins/styles/
--copy
--objdump x86_64-w64-mingw32.shared-objdump"
- "cp -f nvdaControllerClient64.dll ${MEDIA_PATH}/${CI_PROJECT_NAME}/redist/nvdaControllerClient64.dll"
- "rm -f ${MEDIA_PATH}/${CI_PROJECT_NAME}/redist/opengl32.dll"
build-retroarch-windows-i686:
@@ -104,9 +105,10 @@ build-retroarch-windows-msvc10-x64:
SDK_BIN_DIR: C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin
RCEDIT_BIN_DIR: C:\Program Files\rcedit
PEDEPS_BIN_DIR: C:\Program Files\pedeps-0.1.9-win64\bin
MSVC_PLATFORM: windows_msvc2010_x64
before_script:
- $Env:HOME = "."
- $Env:Path += -join(";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
- $Env:Path += -join(";", "$Env:MSYS_BIN_DIR", ";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
artifacts:
paths:
- retroarch.exe
@@ -114,26 +116,31 @@ build-retroarch-windows-msvc10-x64:
expire_in: 10 min
dependencies: []
script:
# Build RetroArch
- $Script:MakeCmd = "$Env:MSYS_BIN_DIR\env.exe $Env:MSYS_BIN_DIR\bash.exe -l -c 'make -f Makefile.griffin platform=windows_msvc2010_x64'"
- Invoke-Expression $Script:MakeCmd
- mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
- rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
# Create .media subdirectories
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
- Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
- Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
- Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc10 build should not have any, but this
# may change in the future)
- copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
- Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
- |
$ErrorActionPreference = 'Stop'
# Build RetroArch
bash.exe -l -c "make -f Makefile.griffin platform=$Env:MSVC_PLATFORM"
if ($LastExitCode -ne 0){throw "Failed to build RetroArch"}
mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
if ($LastExitCode -ne 0){throw "Failed to add manifest to RetroArch binary"}
rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
if ($LastExitCode -ne 0){throw "Failed to set icon of RetroArch binary"}
# Create .media subdirectories
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc builds should not have any, but this
# may change in the future)
copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
if ($LastExitCode -ne 0){throw "Failed to copy RetroArch dependencies"}
Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
build-retroarch-windows-msvc10-i686:
tags:
@@ -147,9 +154,10 @@ build-retroarch-windows-msvc10-i686:
SDK_BIN_DIR: C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin
RCEDIT_BIN_DIR: C:\Program Files\rcedit
PEDEPS_BIN_DIR: C:\Program Files\pedeps-0.1.9-win64\bin
MSVC_PLATFORM: windows_msvc2010_x86
before_script:
- $Env:HOME = "."
- $Env:Path += -join(";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
- $Env:Path += -join(";", "$Env:MSYS_BIN_DIR", ";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
artifacts:
paths:
- retroarch.exe
@@ -157,26 +165,31 @@ build-retroarch-windows-msvc10-i686:
expire_in: 10 min
dependencies: []
script:
# Build RetroArch
- $Script:MakeCmd = "$Env:MSYS_BIN_DIR\env.exe $Env:MSYS_BIN_DIR\bash.exe -l -c 'make -f Makefile.griffin platform=windows_msvc2010_x86'"
- Invoke-Expression $Script:MakeCmd
- mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
- rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
# Create .media subdirectories
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
- Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
- Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
- Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc10 build should not have any, but this
# may change in the future)
- copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
- Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
- |
$ErrorActionPreference = 'Stop'
# Build RetroArch
bash.exe -l -c "make -f Makefile.griffin platform=$Env:MSVC_PLATFORM"
if ($LastExitCode -ne 0){throw "Failed to build RetroArch"}
mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
if ($LastExitCode -ne 0){throw "Failed to add manifest to RetroArch binary"}
rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
if ($LastExitCode -ne 0){throw "Failed to set icon of RetroArch binary"}
# Create .media subdirectories
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc builds should not have any, but this
# may change in the future)
copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
if ($LastExitCode -ne 0){throw "Failed to copy RetroArch dependencies"}
Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
build-retroarch-windows-msvc05-i686:
tags:
@@ -191,9 +204,10 @@ build-retroarch-windows-msvc05-i686:
RCEDIT_BIN_DIR: C:\Program Files\rcedit
PEDEPS_BIN_DIR: C:\Program Files\pedeps-0.1.9-win64\bin
VS80COMNTOOLS: C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\Tools\
MSVC_PLATFORM: windows_msvc2005_x86
before_script:
- $Env:HOME = "."
- $Env:Path += -join(";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
- $Env:Path += -join(";", "$Env:MSYS_BIN_DIR", ";", "$Env:SDK_BIN_DIR", ";", "$Env:RCEDIT_BIN_DIR", ";", "$Env:PEDEPS_BIN_DIR")
artifacts:
paths:
- retroarch.exe
@@ -201,26 +215,31 @@ build-retroarch-windows-msvc05-i686:
expire_in: 10 min
dependencies: []
script:
# Build RetroArch
- $Script:MakeCmd = "$Env:MSYS_BIN_DIR\env.exe $Env:MSYS_BIN_DIR\bash.exe -l -c 'make -f Makefile.griffin platform=windows_msvc2005_x86'"
- Invoke-Expression $Script:MakeCmd
- mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
- rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
# Create .media subdirectories
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
- New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
- Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
- Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
- Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc05 build should not have any, but this
# may change in the future)
- copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
- Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
- |
$ErrorActionPreference = 'Stop'
# Build RetroArch
bash.exe -l -c "make -f Makefile.griffin platform=$Env:MSVC_PLATFORM"
if ($LastExitCode -ne 0){throw "Failed to build RetroArch"}
mt.exe -nologo -manifest "retroarch.exe.manifest" -outputresource:"retroarch.exe;#1"
if ($LastExitCode -ne 0){throw "Failed to add manifest to RetroArch binary"}
rcedit-x64.exe "retroarch.exe" --set-icon "media\retroarch.ico"
if ($LastExitCode -ne 0){throw "Failed to set icon of RetroArch binary"}
# Create .media subdirectories
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg" -ItemType Directory
New-Item -Path "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist" -ItemType Directory
# Copy audio/video filters
Get-ChildItem -Path "libretro-common/audio/dsp_filters/*" -Include *.dsp | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/audio"
Get-ChildItem -Path "gfx/video_filters/*" -Include *.filt | Copy-Item -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/filters/video"
# Copy default config file
Copy-Item -Path "retroarch.cfg" -Destination "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/pkg/retroarch.default.cfg"
# Copy dll dependencies
# (note that msvc builds should not have any, but this
# may change in the future)
copypedeps.exe -r retroarch.exe "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist"
if ($LastExitCode -ne 0){throw "Failed to copy RetroArch dependencies"}
Remove-Item "$Env:MEDIA_PATH/$Env:CI_PROJECT_NAME/redist/retroarch.exe" -ErrorAction Ignore
build-retroarch-linux-x64:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-amd64-ubuntu:xenial-gcc9
@@ -326,12 +345,11 @@ build-retroarch-linux-i686:
dependencies: []
script:
- xcodebuild -project pkg/apple/${XCPROJECT_NAME}.xcodeproj -config Release -scheme RetroArch -archivePath ${XCARCHIVE_PATH} -xcconfig pkg/apple/${XCCONFIG} archive
- pushd ${XCARCHIVE_PATH}.xcarchive/Products/Users/gitlab/Applications/
- ditto -c -k --sequesterRsrc --keepParent RetroArch.app RetroArch.zip
- popd
- mv ${XCARCHIVE_PATH}.xcarchive/Products/Users/gitlab/Applications/RetroArch.zip ${XCPROJECT_NAME}.zip
- xcodebuild -exportArchive -archivePath ${XCARCHIVE_PATH}.xcarchive -exportPath . -exportOptionsPlist pkg/apple/OSX/ExportOptions.plist
- ditto -c -k --sequesterRsrc --keepParent RetroArch.app ${XCPROJECT_NAME}.zip
- mkdir .retroarch-repo
- "cp -r ./* .retroarch-repo"
- echo '#define GIT_VERSION ' $(git rev-parse --short HEAD) > .retroarch-repo/.git_version.h
- "mv .retroarch-repo/ retroarch-repo/"
# Mac OS Universal, Metal
@@ -345,20 +363,47 @@ build-retroarch-osx-opengl-x64:
XCPROJECT_NAME: RetroArch
XCCONFIG: OpenGL_GitLabCI.xcconfig
#build-retroarch-osx-ppc:
# stage: build
# artifacts:
# paths:
# - ${XCPROJECT_NAME}.zip
# - retroarch-repo/
# expire_in: 10 min
# dependencies: []
# variables:
# XCPROJECT_NAME: RetroArch
# XCCONFIG: OpenGL_GitLabCI.xcconfig
# tags:
# - macosx-legacy
# script:
# - xcodebuild -target RetroArch -configuration Release -project pkg/apple/RetroArch_PPC.xcodeproj ONLY_ACTIVE_ARCH=NO
# - pushd pkg/apple/build/Release/
# - ditto -c -k --sequesterRsrc --keepParent RetroArch.app ${XCPROJECT_NAME}.zip
# - popd
# - mv pkg/apple/build/Release/RetroArch.zip ${XCPROJECT_NAME}.zip
# - mkdir .retroarch-repo
# - "cp -r ./* .retroarch-repo"
# - "mv .retroarch-repo/ retroarch-repo/"
build-retroarch-ios-arm64:
extends: .build-retroarch-macos-xcode
tags:
- mac-apple-silicon
variables:
XCPROJECT_NAME: RetroArch_iOS11_Metal
XCPROJECT_NAME: RetroArch_iOS13
XCCONFIG: GitLabCI.xcconfig
XCSCHEME: "RetroArch iOS Release"
XCDESTINATION: "generic/platform=iOS"
artifacts:
paths:
- retroarch-repo/
expire_in: 10 min
script:
- xcodebuild -project pkg/apple/${XCPROJECT_NAME}.xcodeproj -config Release -scheme "${XCSCHEME}" -xcconfig pkg/apple/iOS/GitLabCI.xcconfig build
- xcodebuild -project pkg/apple/${XCPROJECT_NAME}.xcodeproj -destination ${XCDESTINATION} -config Release -scheme "${XCSCHEME}" -xcconfig pkg/apple/iOS/${XCCONFIG} build
- mkdir .retroarch-repo
- "cp -r ./* .retroarch-repo"
- echo '#define GIT_VERSION ' $(git rev-parse --short HEAD) > .retroarch-repo/.git_version.h
- "mv .retroarch-repo/ retroarch-repo/"
build-retroarch-ios9:
@@ -375,12 +420,14 @@ build-retroarch-ios9:
- xcodebuild -project pkg/apple/${XCPROJECT_NAME}.xcodeproj -config Release -scheme "${XCSCHEME}" -xcconfig pkg/apple/iOS/GitLabCI.xcconfig build
- mkdir .retroarch-repo
- "cp -r ./* .retroarch-repo"
- echo '#define GIT_VERSION ' $(git rev-parse --short HEAD) > .retroarch-repo/.git_version.h
- "mv .retroarch-repo/ retroarch-repo/"
build-retroarch-tvos-arm64:
extends: build-retroarch-ios-arm64
variables:
XCSCHEME: "RetroArch tvOS Release"
XCDESTINATION: "generic/platform=tvOS"
build-retroarch-dingux-mips32:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-dingux:latest
@@ -470,6 +517,29 @@ build-retroarch-retrofw-mips32:
- "cp -f libretro-common/audio/dsp_filters/*.dsp ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/audio"
- "cp -f gfx/video_filters/*.filt ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/video"
build-retroarch-miyoo-arm32:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-dingux:latest
stage: build
variables:
MEDIA_PATH: .media
STRIP_BIN: 1
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch
- ${MEDIA_PATH}
expire_in: 10 min
dependencies: []
script:
- "make -j$NUMPROC -f Makefile.miyoo"
- "mkdir -p ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/audio"
- "mkdir -p ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/video"
- "mkdir -p ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "cp -f libretro-common/audio/dsp_filters/*.dsp ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/audio"
- "cp -f gfx/video_filters/*.filt ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/video"
- "cp -f pkg/miyoo/20a-retroarch ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
build-retroarch-android-normal:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-android:latest
stage: build
@@ -478,10 +548,15 @@ build-retroarch-android-normal:
- retroarch-precompiled/
expire_in: 10 min
script:
- "cd pkg/android/phoenix && ./gradlew assembleNormalRelease && cd -"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
script:
- |
set -e
cd pkg/android/phoenix
./gradlew assembleNormalRelease
cd -
mkdir .retroarch-precompiled
cp -r ./* .retroarch-precompiled/
mv .retroarch-precompiled/ retroarch-precompiled/
build-retroarch-android-aarch64:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-android:latest
@@ -491,10 +566,14 @@ build-retroarch-android-aarch64:
- retroarch-precompiled/
expire_in: 10 min
script:
- "cd pkg/android/phoenix && ./gradlew assembleAarch64Release && cd -"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
- |
set -e
cd pkg/android/phoenix
./gradlew assembleAarch64Release
cd -
mkdir .retroarch-precompiled
cp -r ./* .retroarch-precompiled/
mv .retroarch-precompiled/ retroarch-precompiled/
build-retroarch-android-ra32:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-android:latest
@@ -504,10 +583,14 @@ build-retroarch-android-ra32:
- retroarch-precompiled/
expire_in: 10 min
script:
- "cd pkg/android/phoenix && ./gradlew assembleRa32Release && cd -"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
- |
set -e
cd pkg/android/phoenix
./gradlew assembleRa32Release
cd -
mkdir .retroarch-precompiled
cp -r ./* .retroarch-precompiled/
mv .retroarch-precompiled/ retroarch-precompiled/
build-retroarch-android-playstore-normal:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-android:latest
@@ -517,10 +600,14 @@ build-retroarch-android-playstore-normal:
- retroarch-precompiled/
expire_in: 10 min
script:
- "cd pkg/android/phoenix && ./gradlew bundlePlayStoreNormalRelease && cd -"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
- |
set -e
cd pkg/android/phoenix
./gradlew bundlePlayStoreNormalRelease
cd -
mkdir .retroarch-precompiled
cp -r ./* .retroarch-precompiled/
mv .retroarch-precompiled/ retroarch-precompiled/
build-retroarch-android-playstore-plus:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-android:latest
@@ -530,10 +617,14 @@ build-retroarch-android-playstore-plus:
- retroarch-precompiled/
expire_in: 10 min
script:
- "cd pkg/android/phoenix && ./gradlew bundlePlayStorePlusRelease && cd -"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
- |
set -e
cd pkg/android/phoenix
./gradlew bundlePlayStorePlusRelease
cd -
mkdir .retroarch-precompiled
cp -r ./* .retroarch-precompiled/
mv .retroarch-precompiled/ retroarch-precompiled/
build-static-retroarch-libnx-aarch64:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-libnx-devkitpro:latest
@@ -576,6 +667,50 @@ build-static-retroarch-dummy-libnx-aarch64:
- "cp -f gfx/video_filters/*.filt ${MEDIA_PATH}/${CI_PROJECT_NAME}/filters/video"
- "cp -f pkg/libnx/retroarch.jpg ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
build-static-retroarch-psp:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psp:latest
stage: prepare-for-static-cores
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch-precompiled/
expire_in: 10 min
dependencies: []
needs:
# Dummy build requires no core
- build-static-retroarch-dummy-psp
script:
# We need to boostrap before compile
- "(cd bootstrap/psp1/kernel_functions_prx/ && make && cd -)"
# Allow failure since we don't have a core
- "make -f Makefile.psp1 -j$NUMPROC ||:"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
build-static-retroarch-dummy-psp:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psp:latest
stage: build
variables:
MEDIA_PATH: .media
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- EBOOT.PBP
- kernel_functions.prx
- ${MEDIA_PATH}
expire_in: 10 min
dependencies: []
script:
- "(cd bootstrap/psp1/kernel_functions_prx/ && make && cd -)"
- "make -f Makefile.psp1.salamander -j$NUMPROC"
- "make -C bootstrap/psp1/kernel_functions_prx/"
- "mkdir -p ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "cp -f pkg/psp1/ICON0.PNG ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "cp -f pkg/psp1/PIC1.PNG ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
build-static-retroarch-vita:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-vita:latest
stage: prepare-for-static-cores
@@ -626,6 +761,8 @@ build-static-retroarch-dummy-vita:
build-static-retroarch-ps2:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-ps2:latest
stage: prepare-for-static-cores
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch-precompiled/
@@ -636,8 +773,7 @@ build-static-retroarch-ps2:
- build-static-retroarch-dummy-ps2
script:
# Allow failure since we don't have a core
# PS2 makefile for now doesn't allow -jX so this is why is hardcoded to -j1
- "make -f Makefile.ps2 -j1 ||:"
- "make -f Makefile.ps2 -j$NUMPROC ||:"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
@@ -646,8 +782,7 @@ build-static-retroarch-dummy-ps2:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-ps2:latest
stage: build
before_script:
# PS2 doesn't allow to use -jX for now
- export NUMPROC=1
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- raboot.elf
@@ -656,8 +791,8 @@ build-static-retroarch-dummy-ps2:
script:
- "make -f Makefile.ps2.salamander -j$NUMPROC release"
build-static-retroarch-psp:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psp:latest
build-static-retroarch-psl1ght:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psl1ght:latest
stage: prepare-for-static-cores
before_script:
- export NUMPROC=$(($(nproc)/3))
@@ -668,37 +803,77 @@ build-static-retroarch-psp:
dependencies: []
needs:
# Dummy build requires no core
- build-static-retroarch-dummy-psp
- build-static-retroarch-dummy-psl1ght
script:
# We need to boostrap before compile
- "(cd bootstrap/psp1/kernel_functions_prx/ && make && cd -)"
# Allow failure since we don't have a core
- "make -f Makefile.psp1 -j$NUMPROC ||:"
- "make -f Makefile.psl1ght -j$NUMPROC ||:"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
build-static-retroarch-dummy-psp:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psp:latest
build-static-retroarch-dummy-psl1ght:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-psl1ght:latest
stage: build
variables:
MEDIA_PATH: .media
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- EBOOT.PBP
- kernel_functions.prx
- ${MEDIA_PATH}
- retroarch_psl1ght_salamander.elf
expire_in: 10 min
dependencies: []
script:
- "(cd bootstrap/psp1/kernel_functions_prx/ && make && cd -)"
- "make -f Makefile.psp1.salamander -j$NUMPROC"
- "make -C bootstrap/psp1/kernel_functions_prx/"
- "mkdir -p ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "cp -f pkg/psp1/ICON0.PNG ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "cp -f pkg/psp1/PIC1.PNG ${MEDIA_PATH}/${CI_PROJECT_NAME}/pkg"
- "make -f Makefile.psl1ght.salamander -j$NUMPROC create-salamander"
build-static-retroarch-orbis:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-orbis:latest
stage: prepare-for-static-cores
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch-precompiled/
expire_in: 10 min
dependencies: []
needs:
# Dummy build requires no core
- build-static-retroarch-dummy-orbis
script:
# Allow failure since we don't have a core
- "make -f Makefile.orbis -j$NUMPROC ||:"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
build-static-retroarch-dummy-orbis:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-orbis:latest
stage: build
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch_orbis.self
expire_in: 10 min
dependencies: []
script:
- "make -f Makefile.orbis -j$NUMPROC HAVE_STATIC_DUMMY=1"
build-static-retroarch-djgpp:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-djgpp-build-container:latest
stage: prepare-for-static-cores
before_script:
- export NUMPROC=$(($(nproc)/3))
artifacts:
paths:
- retroarch-precompiled/
expire_in: 10 min
dependencies: []
needs: []
script:
# Allow failure since we don't have a core
- "make -f Makefile.dos -j$NUMPROC ||:"
- "mkdir .retroarch-precompiled"
- "cp -r ./* .retroarch-precompiled/"
- "mv .retroarch-precompiled/ retroarch-precompiled/"
build-static-retroarch-ctr:
image: $CI_SERVER_HOST:5050/libretro-infrastructure/libretro-build-devkitpro:latest
@@ -730,6 +905,7 @@ build-static-retroarch-ctr-legacy:
- retroarch-precompiled/
expire_in: 10 min
dependencies: []
needs: []
script:
# Allow failure since we don't have a core
- "make -f Makefile.ctr -j$NUMPROC ||:"
@@ -940,9 +1116,11 @@ trigger_static-cores:
stage: trigger-static-cores
needs:
- build-static-retroarch-libnx-aarch64
- build-static-retroarch-psp
- build-static-retroarch-vita
- build-static-retroarch-ps2
- build-static-retroarch-psp
- build-static-retroarch-psl1ght
- build-static-retroarch-orbis
- build-static-retroarch-ctr
- build-static-retroarch-ctr-legacy
- build-static-retroarch-wiiu
+184 -148
View File
@@ -1,155 +1,191 @@
{
"configurations": [
{
"name": "Mac",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}",
"${workspaceRoot}/libretro-common/include"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
"configurations": [
{
"name": "Mac",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}",
"${workspaceRoot}/libretro-common/include"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"macFrameworkPath": [
"/System/Library/Frameworks",
"/Library/Frameworks"
]
},
{
"name": "Linux",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}",
"${workspaceFolder}/libretro-common/include",
"${workspaceRoot}/libretro-common/include"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"macFrameworkPath": [
"/System/Library/Frameworks",
"/Library/Frameworks"
]
},
{
"name": "Linux",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}",
"${workspaceFolder}/libretro-common/include",
"${workspaceRoot}/libretro-common/include"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Win32",
"includePath": [
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/winrt",
"${workspaceRoot}",
"${workspaceFolder}/libretro-common/include"
],
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/winrt",
"${workspaceRoot}"
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Win32",
"includePath": [
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/winrt",
"${workspaceRoot}",
"${workspaceFolder}/libretro-common/include"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
},
{
"name": "msys2-mingw32",
"includePath": [
"C:/msys64/mingw32/include",
"C:/msys64/mingw32/i686-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/msys64/mingw32/include",
"C:/msys64/mingw32/i686-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
"defines": [
"_DEBUG",
"UNICODE"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "msys2-mingw64",
"includePath": [
"C:/msys64/mingw64/include",
"C:/msys64/mingw64/x86_64-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/msys64/mingw64/include",
"C:/msys64/mingw64/x86_64-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/um",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/ucrt",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/shared",
"C:/Program Files (x86)/Windows Kits/10/Include/10.0.15063.0/winrt",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17",
"configurationProvider": "ms-vscode.makefile-tools"
},
{
"name": "msys2-mingw32",
"includePath": [
"C:/msys64/mingw32/include",
"C:/msys64/mingw32/i686-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Switch",
"includePath": [
"/opt/devkitpro/devkitA64/aarch64-none-elf/include",
"/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/8.3.0/include",
"/opt/devkitpro/libnx/include",
"/opt/devkitpro/portlibs/switch/include",
"/opt/devkitpro/portlibs/switch/include/freetype2",
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"__aarch64__",
"__SWITCH__",
"HAVE_LIBNX"
],
"windowsSdkVersion": "10.0.17763.0",
"compilerPath": "/opt/devkitpro/devkitA64/bin/aarch64-none-elf-gcc",
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/msys64/mingw32/include",
"C:/msys64/mingw32/i686-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "msys2-mingw64",
"includePath": [
"C:/msys64/mingw64/include",
"C:/msys64/mingw64/x86_64-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"defines": [
"_DEBUG",
"UNICODE"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"path": [
"C:/msys64/mingw64/include",
"C:/msys64/mingw64/x86_64-w64-mingw32/include",
"${workspaceRoot}/libretro-common/include",
"${workspaceRoot}/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Switch",
"includePath": [
"/opt/devkitpro/devkitA64/aarch64-none-elf/include",
"/opt/devkitpro/devkitA64/lib/gcc/aarch64-none-elf/8.3.0/include",
"/opt/devkitpro/libnx/include",
"/opt/devkitpro/portlibs/switch/include",
"/opt/devkitpro/portlibs/switch/include/freetype2",
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE",
"__aarch64__",
"__SWITCH__",
"HAVE_LIBNX"
],
"windowsSdkVersion": "10.0.17763.0",
"compilerPath": "/opt/devkitpro/devkitA64/bin/aarch64-none-elf-gcc",
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "gcc-x64"
},
{
"name": "WiiU",
"includePath": [
"/opt/devkitpro/devkitPPC/powerpc-eabi/include",
"/opt/devkitpro/devkitPPC/lib/gcc/powerpc-eabi/6.3.0/include",
"/opt/devkitpro/portlibs/ppc/include",
"${workspaceFolder}/**"
],
"defines": [
"WIIU",
"WIIU_HID"
],
"windowsSdkVersion": "10.0.17763.0",
"compilerPath": "/opt/devkitpro/devkitPPC/bin/powerpc-eabi-gcc",
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "gcc-x64"
},
{
"name": "ps2sdk-ee",
"includePath": [
"${env:PS2DEV}/ps2sdk/common/include",
"${env:PS2DEV}/ps2sdk/ee/include",
"${env:PS2DEV}/gsKit/include",
"${workspaceFolder}/**"
],
"defines": [
"PS2",
"_EE"
],
"compilerPath": "${env:PS2DEV}/ee/bin/mips64r5900el-ps2-elf-gcc",
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
+5 -33
View File
@@ -1,30 +1,26 @@
{
"terminal.integrated.shell.windows": "C:\\msys64\\usr\\bin\\bash.exe",
/*"terminal.integrated.shell.windows": "C:\\msys64\\usr\\bin\\bash.exe",
"terminal.integrated.env.windows": {
"PATH": "/mingw64/lib/ccache/bin:/mingw64/lib/ccache/bin:/mingw64/lib/ccache/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:$PATH",
"MSYSTEM": "MINGW64",
},
},*/
"terminal.integrated.cursorBlinking": true,
"editor.tabSize": 3,
"editor.detectIndentation": false,
"editor.renderWhitespace": "all",
"editor.insertSpaces": true,
"editor.formatOnSave": false,
"editor.ruler": [80],
"files.associations": {
"frontend_driver.h": "c",
"*.h": "c",
"*.in": "c",
"*.rh": "c",
"array": "c",
"file_stream.h": "c",
"driver.h": "c",
"iosfwd": "c",
"xlocbuf": "c",
"xmemory0": "c",
"ios": "c",
"list": "c",
"input_driver.h": "c",
"menu_driver.h": "c",
"file_path.h": "c",
"unordered_map": "c",
"unordered_set": "c",
"sstream": "cpp",
@@ -33,39 +29,15 @@
"initializer_list": "c",
"string_view": "c",
"utility": "c",
"menu_input.h": "c",
"tasks_internal.h": "c",
"ozone.h": "c",
"ozone_theme.h": "c",
"ozone_texture.h": "c",
"string_list.h": "c",
"core_info.h": "c",
"thread": "c",
"xlocale": "c",
"gfx_widgets.h": "c",
"message_queue.h": "c",
"task_queue.h": "c",
"fifo_queue.h": "c",
"file_list.h": "c",
"strl.h": "c",
"configuration.h": "c",
"ozone_display.h": "c",
"verbosity.h": "c",
"retroarch.h": "c",
"gfx_animation.h": "c",
"netplay.h": "c",
"scaler.h": "c",
"deque": "c",
"vector": "c",
"xhash": "c",
"xiosbase": "c",
"xstring": "c",
"xtree": "c",
"xutility": "c",
"menu_input_dialog.h": "c",
"ozone_sidebar.h": "c",
"menu_thumbnail_path.h": "c",
"badges.h": "c"
"xutility": "c"
},
"C_Cpp.dimInactiveRegions": false,
}
+242 -52
View File
@@ -3,319 +3,509 @@ RetroArch and the libretro team would like to
acknowledge the following contributors:
1ch (L0sted)
Aaahh Ahh (Aaahh)
23rd
6lackmag3
A Schain (aschain)
Aaron Oneal (aarononeal)
Aaron Ramirez (aaronbytes)
Abadede
Adam Londero (alondero)
Adam Mechtley (amechtley)
AdrianoML
Adriano de Moura Leite (amlib)
Adrien Moulin (elyosh)
Aethyrion
ajefr
AKuHAK
Alberto Alonso Ruibal (albertoruibal)
Alberto Fustinoni (albertofustinoni)
Alberto Simon (asimonf)
Alcaro
aldebaran27
Aleksey Samoilov (Sunderland93)
Alessandro Mangone (Vektor) (zevektor)
Alex Eckhart (alex34567)
Alex Folland (AlexFolland)
Alex Kornitzer (alexkornitzer)
Alexander Spady (alkaseltzerspadt)
Alexander Trufanov (trufanov-nok)
Alexandre Garcia (Alexandre-Garcia)
Alfredo Monclus (alfrix)
aliaspider
alphanu1
altiereslima
Alwin Garside (Yogarine)
Amiga1200Gamer (amigagamer)
amtz
Anders Storhaug (andersstorhaug)
Andre Leiradella (leiradel)
Andrés (fr500)
Andy Nguyen (TheOfficialFloW)
Anthony J. Bentley (bentley)
Antonio Jose Ramos Marquez (psxdev)
antonioginer
Apaczer
AridRayne
ArnaudFaucher
arpruss
arstn
Artem Polishchuk (tim77)
Arto Vainiolehto (arakerlu)
Ash (QuarkTheAwesome)
asavah
Ash (ashquarky)
Ashura (CoalaJoe)
Autechre64
Avton1
ayssia
BananaRama203
barbudreadmon
Barry Rowe (BarryJRowe)
Bartłomiej Burdukiewicz (dev-0x7C6)
Bashar Astifan (basharast)
bearoso
Ben Hamilton (Ben Gertzfield) (bhamiltoncx)
benklop
benutzer193
Bernhard Schelling (schellingb)
blackgur
bmaupin
Bobby Smith (bslenul)
Boris Timofeev (btimofeev)
bparker06
Brandon Johnson (Denu8thell)
Brad (SpiralBrad)
Braden Farmer (farmerbb)
Brandon Johnson (BinaryFissionGames)
Breno Dantas Mendonça (brenodantas10)
Brian Hoem (ZornTaov)
Brian Koropoff (bkoropoff)
Brian S. Stephan (bsstephan)
BringerethOfLight
Brunnis
bsmith (DogParty)
bubuleur
bulzipke
C.W. Betts (MaddTheSane)
Casey Borders (CaseyB)
CatGreen90
ceb33
cedorg
celerizer
Charlène (julianaito)
CheezeCake
Chris Merrett (chrisfu)
Christian Murphy (grimpunch)
christianhaitian
Christoffer Tibell (Brottweiler)
Christopher Snowhill (kode54)
chu (9chu)
Chuck Smith (chucksmith)
CidVonHighwind
clienthax
cold-brewed
Colin Kinloch (ColinKinloch)
CompCom
ComradeEcho
confusedguy9
Conn O'Griofa (psyke83)
Connor McLaughlin (stenzek)
Conrad Kreyling (konistehrad)
CozmoP
Cpasjuste
cpsw
Cray Elliott (MP2E)
Crestwave
CrewMdk
Cristi Mitrana (cmitu)
Cristian Sandu (crazyquark)
ctult
crystalct
CTCaer
cucholix
cudencuden
cxd4
CyberLabSystems
Daehan Kim (iAmGhost)
dalter
Dan Weiss (Dwedit)
danieljg
Daniil Zhilin (LaserMoai)
dankcushions
Darren Thompson (DiscoStarslayer)
Dave (freakdave)
Dave Leaver (danzel)
David CARLIER (devnexen)
David Demelier (markand)
David Erickson (daviderickson)
David Shah (daveshah1)
David G. F. (davidgfnet)
David Lawson (dmrlawson)
David Walters (hiddenasbestos)
dbaronica
DEX357
diablodiab
dibas
Diego A. (SuperrSonic)
Diego Viola (diegoviola)
digitalisland-nino
Diogo Barros (BlueKore)
DogParty
Dmitry Sergeenkov (DuMOHsmol)
dor3k
Doug Christman (dobyrch)
driver1998
Dudu Akiva (duduke)
duganchen
dukemiller
duskgao
Dylan Scott (dyscott)
Dystopian
eadmaster
Eduard Strehlau (Herdinger)
ekipan
Elvira Khabirova (parport0)
embercold
Emmanuel Martin (daliaetnano)
endrift
erbridge
Ethan Lee (flibitijibibo)
Exvat
extrowerk
Ezio-PS
F (erbridge)
Fabio (Oibaf66)
Fabio Ritrovato (Sephiroth87)
Fayne Aldan (FayneAldan)
fff (felinben)
Filipe Azevedo (pasnox)
FIX94
Flame Sage (chris062689)
Flame Sage (flamesage)
flyinghead
FmT0
francescotintori
Francisco Javier Trujillo Mata (fjtrujy)
Francisco José García García (frangarcj)
FreeShippingParty
fuzzydunlops732 (JKoppel93)
GABO1423
Gabriel (Ghabry)
GameDragon2k
Garrett Brown (garbear)
gatecat (daveshah1)
GavinDarkglider
gblues
Geoffrey Plitt (GeoffreyPlitt)
Giovanni Cascione (spleen1981)
Glenn Hevey (hevey)
Googer
gordon-fish
gouchi
grant2258
Gregor Richards (GregorR)
Grzegorz Raciborski (graciborski)
Gui Andrade (archshift)
Guillaume Thiolliere (thiolliere)
Guo Yunhe (guoyunhe)
Gustavo Maciel Dias Vieira (gmdvieira)
gvbr
H. İbrahim Güngör (igungor)
hadess
Hans-Kristian Arntzen (Themaister)
Henri Gomez (hgomez)
Henri Gomez (hgomez-sonarsource)
Higor Eurípedes (heuripedes)
Hisman Yosika (dnjstlr555)
Henry Castro (hcvcastro)
Higor E. (heuripedes)
hizzlekizzle
Hugo B. (hug0b)
Hugo Hromic (hhromic)
hunterk
hyarsan
Hyllian
HyperspaceMadness
i30817
iAmGhost
im4potato
ImJezze
İbrahim Güngör (igungor)
Jack (jakcron)
Jacob (cubtekki)
Jacob (RegenJacob)
Jacob Patterson (jacobpa)
jacobsson (Roet-Ivar)
Jahed
Jake Stine (jstine35)
James Le Cuirot (chewi)
James Sexton (Bezier89)
Jamiras
Jan Holthuis (Holzhaus)
Jason Tomsic (plaidman)
Javier Martinez Canillas (martinezjavier)
Jay McCarthy (jeapostrophe)
jdgleaver
Jean-André Santoni (kivutar)
Jean-Paul Mari (djipi)
Jean-Sébastien Guay (Skylark13)
Jesse Bryan (winneon)
Jeff (jeffbdavenport)
Jeff Sousa (LordeIlluminati)
jess (winneon)
Jesse Talavera-Greenberg (JesseTG)
Joan Coll Cerdán (johanbcn)
Job Adrian Salinas Gonzalez (efylan)
Joe Osborn (JoeOsborn)
Joel (joel16)
Joel Puig Rubio (XXLuigiMario)
Joerg Sonnenberger (jsonn)
Johannes Schickel (lordhoto)
John Parton (john-parton)
John Regan (jprjr)
Jon Maddox (maddox)
Jonathan (JonnyMe)
Jonathan Relf (jonathanrelf)
Joohan Lee (losernator)
Jools Wills (joolswills)
Jose Lage Miguez (Joselagem)
Joseph Carter (iKarith)
Joseph Carter (knghtbrd)
Joseph Conan Montgomery (Grotke)
Josh Palmer (ShiftyAxel)
jsd1982 (JamesDunne)
jSTE0
JuanVCS
Justin Jacobs (dorkster)
Justin Weiss (justinweiss)
JustMeDaFaq
Kangmo-Ahn
Karl Forshaw (karlforshaw)
Kate Eckhart (katepango)
Keith Bowes (keithbowes)
Ken Rossato (rossato)
krzys_h (krzys-h)
kikmon
Kopert
Krzysztof Haładyn (krzys_h) (krzys-h)
kurumushi
kwyxz
l3iggs
lambolighting
lasers
Lawrence Kesteloot (lkesteloot)
lifajucejo
liffy (lifning)
LazyBumHorse
LazyFunker
Lennard Kittner (Lennard599)
LibretroAdmin
Lionel Flandrin (simias)
littleguy77
Logan (loganmc10)
liushuyu
Logan McNaughton (loganmc10)
lordashram
Lothar Serra Mari (lotharsm)
Lubosz Sarnecki (lubosz)
lucasmr
lucianposton
lxerandrew
m4xw
mahoneyt944
Mahyar Koshkouei (deltabeard)
Mai (lioncash)
MajorPainTheCactus
maksun
Manuel Alfayate Corchete (vanfanel)
Marcelo Munhoz Pélos (mpelos)
Marcus Crisostomo (mcrisostomo)
markwkidd
Maschell
Mat M. (lioncash)
Mats A. (Datamats)
Mats (Myaats)
Matt Sephton (gingerbeardman)
Matthew Bauer (matthewbauer)
Matthew Wang (asakous)
Max K. (langerhans)
Maxime Gauduin (alucryd)
mcrisostomo
meancoot
meepingsnesroms
meleu
Merry Mello (merryMellody)
micechal
Michael Burgardt (DisasterMo)
Michael K. (kuxii2016)
Michael Lelli (ToadKing)
Michał Durak (micechal)
mickski56
Mico Chopitea (micochops)
miguelpinheiro
Mike Swanson (chungy)
miqlas (extrowerk)
mikeOSX
minucce
misson20000
Mohmoud (esoptron) (Hedonium)
Monroe88
Morgane (MorganeAD)
mprobinson
MrHuu
MrJs (mrjschulte)
Muhamed Hobi (mmhobi7)
muzuiget
mwtremblay
myfreeweb
N/A (inactive123)
Nargash
Nathan S. (natinusala)
NathanStrong-Tripwire
nattycleopatra
Naveen (naveensrinivasan)
nayslayer
Nephilim
negativeExponent
Neil Barkhina (nbarkhina)
neil4
netux79
nfnty
nia (ensra)
nfp0
nia (alarixnia)
Nicolas Adenis-Lamarre (nadenislamarre)
Nicolas Guillaumin (nguillaumin)
Nicolas Lopez Fernandez (pyroesp)
Nikita Vakhrushev (SwooodGa)
Nicolas Roehm (NicolasRoehm)
Nik (WerWolv)
Nikita Vakhrushev (XF10C)
Nikola Kocić (nikola-kocic)
Niouby
Nikos Chantziaras (realnc)
Nils Hasenbanck (hasenbanck)
njordan64
nosh01
not6 (r-type)
notaz
nstCactus
nurupo
Oggom
Oh Won Sik (dnjstlr555)
Oleg Shevchenko (olsh)
Omar Saleem (ofsaleem)
opendata26
Ophidon
orbea
Oschowa
OsirizX
OV2
Palmic (mpalomas)
pamapa
Paolo Bonzini (bonzini)
Paul McCarty (notabeatle)
pcjco
Pedro Ferraz (ferrazpedro)
Pedro Ribeiro (pedrib)
Peter J Kos (pkos)
Philippe Simons (loki666)
pinumbernumber
Piotr Dobrowolski (Informatic)
pjft
Poligraf
pponso1
pyroesp
R-YaTian
Rafael Toledo (rafaeltoledo)
Ramiro Morales (ramiro)
Raphaël Zumer (rzumer)
retro-wertz
redenvelope2000
Reid Kleckner (rnk)
repojohnray
retrotails
revvv
reztek
Richard Howell (rmaz)
Rinnegatamante
rlnilsen
Rob Loach (RobLoach)
Robin de Rooij (rrooij)
Romain Gay (vikbez)
Romain Graillot (notnotme)
Romain TISSERAND (rtissera)
Roman Fomin (rfomin)
Roman Kalashnikov (lunixoid)
Royerson
rrooij
rsn8887
Ruben Nine (rnine)
Ryan C. Gordon (icculus)
Ryan Kuba (thelamer)
Ryunam
rz5
Sage (neonfuz)
Saggi Mizrahi (ficoos)
SAKUJ0
Sam Pagenkopf (44100hertz)
Salvador (salvacam)
Sam (44100hertz)
Sam Lantinga (slouken)
Sam Stenvall (Jalle19)
Samuel P. (p-sam)
Sanaki
Scheiker
Sean O'Neil (seanocali)
Sebastien Ronsse (sronsse)
SecularSteve
Sefa Eyeoglu (Scrumplex)
Sergei Nikitin (Kert)
Sergei Trofimovich (trofi)
Sergi Granell (xerpi)
Sergio Padrino (sergiou87)
sergio-br2 (sergiobenrocha2)
Seth Kingsley (sethk)
Shadow (ShadowOne333)
Shane Mouton (ismouton)
shantigilbert
Shfty
Shizeeg Unadequatov (shizeeg)
SimpleTease
SindenLightgun
Sirrempat
slotek
Soar Qin (soarqin)
sonninnos
Sou Bunnbu (iyzsong)
sparklewind
spec-chum
Stefan (gizmo98)
stefan-gr
stellarporter
Steven M. Vascellaro (stevoisiak)
Stephanie Gawroriski (XerTheSquirrel)
Steve Cox (stevenjamescox)
Stevoisiak
stoofin
StormedBubbles
strotlog
Stuart Carnie (stuartcarnie)
Sunguk Lee (d3m3vilurr)
Supernature2k
Sven (RetroSven)
Swingflip
Swizzy
Sylvain Colinet (Skarsnik)
Szunti
Tadek Kijkowski (monkeyman79)
Tatsuya79
Terry Lewis (terry-au)
thedax
theheroGAC
TheMrIron2
TheOfficialFloW
thiolliere
ThePhxRises
TheRhysWyrill
Thomas Lorblanchès (Zlika)
Tilman M. Jaeschke (asciibeats)
Tim Van den Langenbergh (tmtvl)
Tobias Gruetzmacher (TobiX)
Tobias Jakobi (tobiasjakobi)
Todd Laney (ToddLa)
Tomáš Kelemen (ToKe79)
Tor Arne Vestbø (torarnv)
Torsten Paul (t-paul)
TotalCaesar659
tr12345
TroggleMonkey
Twinaphex
tunip3
txorion
Tyler Loch (TylerLoch)
URBANsUNITED
vaguerant
Val Packett (valpackett)
Valerio Proietti (kamicane)
vgmoose
Vicki Pfau (endrift)
Vicky C Lau (vickychenglau)
vin (suseme)
Vincent Pelletier (vpelletier)
Vladimir Panteleev (CyberShadow)
Vladimir Serbinenko (phcoder)
Víctor "IlDucci" (IlDucci)
waitingmoon
Wang Vincent (susemm)
Warning: Non-Potable Water (warningnonpotablewater)
webgeek1234
Weedy Weed Smoker (WeedyWeedSmoker)
WerWolv
whorsemaster
Wiimpathy
Wiktor Strzębała (wiktorek140)
Woohyun Shin (sinusinu)
xenomorph-us
xhp-creations
Yari (hyarsan)
yesfish (huwpascoe)
Yongwoon Cho (ssangkong)
yoshisuga
Zer0xFF
zeromus
zlice
Zoran Vuckovic (casdevel)
Érico Nogueira Rolim (ericonr)
Ömercan Kömür (fpscan)
シーはディー四を取る (cxd4)
)";
+1326 -9
View File
File diff suppressed because it is too large. Load diff
+98 -44
View File
@@ -1,66 +1,120 @@
Refer also to this page for more information -
https://docs.libretro.com/development/coding-standards/
Struct ordering
---------------
For POD-types, try to order structs as follows (first to last):
* long double (8 bytes, 16 bytes [64bit x86], 12 bytes [32bit x86])
* double (8 bytes)
* int64_t (8 bytes, 8 bytes [32bit ARM], 4 bytes [32bit x86])
* uint64_t (4 bytes [32bit], 8 bytes [32bit ARM], 8 bytes [64bit])
* pointer (4 bytes [32bit], 8 bytes [64bit] [1])
* intptr_t (4 bytes [32bit], 8 bytes [64bit] [1])
* uintptr_t (4 bytes [32bit], 8 bytes [64bit] [1])
* ptrdiff_t (4 bytes [32bit], 8 bytes [64bit] [1])
* ssize_t (4 bytes [32bit], 8 bytes [64bit])
* size_t (4 bytes [32bit], 8 bytes [64bit])
* jmp_buf (4 bytes)
* long (4 bytes [64bit Win], 8 bytes [64bit non-Win], 4 bytes [32bit])
* int32_t (4 bytes)
* unsigned (4 bytes)
* float (4 bytes)
* int (4 bytes)
* enum (4 bytes)
* int16_t (2 bytes)
* char (1 byte)
* bool (1 byte)
* long double (8 bytes, 16 bytes [64bit x86], 12 bytes [32bit x86])
* double (8 bytes)
* int64_t (8 bytes, 8 bytes [32bit ARM],
4 bytes [32bit x86])
* uint64_t (4 bytes [32bit], 8 bytes [32bit ARM], 8 bytes [64bit])
* pointer (4 bytes [32bit], 8 bytes [64bit] [1])
* intptr_t (4 bytes [32bit], 8 bytes [64bit] [1])
* uintptr_t (4 bytes [32bit], 8 bytes [64bit] [1])
* ptrdiff_t (4 bytes [32bit], 8 bytes [64bit] [1])
* ssize_t (4 bytes [32bit], 8 bytes [64bit])
* size_t (4 bytes [32bit], 8 bytes [64bit])
* jmp_buf (4 bytes)
* long (4 bytes [64bit Win], 8 bytes [64bit non-Win],
4 bytes [32bit])
* int32_t (4 bytes)
* unsigned (4 bytes)
* float (4 bytes)
* int (4 bytes)
* enum (4 bytes)
* int16_t (2 bytes)
* char (1 byte)
* bool (1 byte)
[1] PS3 uses 4 byte pointers despite having a 64bit processor
[1] PS3 uses 4 byte pointers despite having a 64bit processor
Struct members should be sorted by alignment. Therefore, structs
should be sorted by the largest type inside them.
Struct members should be sorted by alignment. Therefore, structs
should be sorted by the largest type inside them.
For example, take a struct like this:
For example, take a struct like this:
typedef struct
{
size_t capacity;
bool old_format;
bool compress;
bool fuzzy_archive_match;
bool autofix_paths;
char path[PATH_MAX_LENGTH];
char base_content_directory[PATH_MAX_LENGTH];
} playlist_config_t;
typedef struct
{
size_t capacity;
bool old_format;
bool compress;
bool fuzzy_archive_match;
bool autofix_paths;
char path[PATH_MAX_LENGTH];
char base_content_directory[PATH_MAX_LENGTH];
} playlist_config_t;
size_t has the biggest alignment here, so 'struct playlist_config_t' inside a struct should come before or after size_t.
size_t has the biggest alignment here, so 'struct playlist_config_t'
inside a struct should come before or after size_t.
*** BEST PRACTICES ***
* If we have pointers and size variable pairs, it's best to interleave them to increase the probability they go in the same cacheline. It also makes the code more readable, that these two variables are connected.
* If we have pointers and size variable pairs, it's best to
interleave them to increase the probability they go in the
same cacheline. It also makes the code more readable, that
these two variables are connected.
Example:
struct a
{
char* b;
size_t b_len;
char* c;
size_t c_len;
};
struct a
{
char* b;
size_t b_len;
char* c;
size_t c_len;
};
Stack size
----------
You have to assume that stack size is going to be limited in RetroArch. Some game consoles (and other embedded systems) might have a default stack size as low as 128Kb or less. Be conservative with stack size but don't try to put very small structs on heap either [to avoid memory fragmentation among other things].
You have to assume that stack size is going to be limited in
RetroArch. Some game consoles (and other embedded systems)
might have a default stack size as low as 128Kb or less.
Be conservative with stack size but don't try to put very
small structs on heap either [to avoid memory fragmentation
among other things]. A balancing act here is necessary.
Be mindful that heap allocations are slow compared to stack.
Functions
---------
- Avoid doing small getter/setter functions. We want a function
to justify its function call overhead by doing a significant
body of work. Small one-line getter/setter functions for what
is predominantly C-style structs is not useful, plus it leads
to people thinking this function is more complex than it
actually is, thus obfuscating the sourcecode instead of it
being easier to read.
If you can find examples in the codebase that violate this
guideline, do not hesitate to point them out to us.
Variable declaration
--------------------
For C source files, we have to insist you stick to the following:
- Declare variables either at the start of a function or the start
of a code block, depending on the scope they need.
- Do not do initial for loop declarations. Refer to the bulletpoint above:
either declare them at the start of the function, or at the start
of the code block.
Not doing this would break compilation on platforms where we are compiling
these C source files in C89 compatibility mode. If such issues occur in pull
requests, we have to request that it be fixed.
VLA (Variable Length Array)
---------------------------
Do not use VLAs (Variable Length Array) in C source files. These are not
C89-compliant.
Miscellaneous
-------------
- Brace usage follows "Allman style". The brace associated with a control statement is placed on the following line,
indented to the same level as the control statement.
Statements within the braces are indented to the next level.
- A single statement block must not include brackets (unless the block uses a macro that expands into multiple lines)
- If possible, avoid 'while (true)' and use 'for (;;)' instead
+306 -163
View File
@@ -1,4 +1,4 @@
# Doxyfile 1.8.14
# Doxyfile 1.9.1
# This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project.
@@ -17,10 +17,10 @@
# Project related configuration options
#---------------------------------------------------------------------------
# This tag specifies the encoding used for all characters in the config file
# that follow. The default is UTF-8 which is also the encoding used for all text
# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
# built into libc) for the transcoding. See
# This tag specifies the encoding used for all characters in the configuration
# file that follow. The default is UTF-8 which is also the encoding used for all
# text before the first occurrence of this tag. Doxygen uses libiconv (or the
# iconv built into libc) for the transcoding. See
# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
# The default value is: UTF-8.
@@ -32,7 +32,7 @@ DOXYFILE_ENCODING = UTF-8
# title of most generated pages and in a few other places.
# The default value is: My Project.
PROJECT_NAME = "RetroArch"
PROJECT_NAME = RetroArch
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
# could be handy for archiving the generated documentation or if some version
@@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY =
OUTPUT_DIRECTORY = docs
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
@@ -93,6 +93,14 @@ ALLOW_UNICODE_NAMES = NO
OUTPUT_LANGUAGE = English
# The OUTPUT_TEXT_DIRECTION tag is used to specify the direction in which all
# documentation generated by doxygen is written. Doxygen will use this
# information to generate all generated output in the proper direction.
# Possible values are: None, LTR, RTL and Context.
# The default value is: None.
OUTPUT_TEXT_DIRECTION = None
# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
# descriptions after the members that are listed in the file and class
# documentation (similar to Javadoc). Set to NO to disable this.
@@ -187,7 +195,17 @@ SHORT_NAMES = YES
# description.)
# The default value is: NO.
JAVADOC_AUTOBRIEF = NO
JAVADOC_AUTOBRIEF = YES
# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
# such as
# /***************
# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
# Javadoc-style will behave just like regular comments and it will not be
# interpreted by doxygen.
# The default value is: NO.
JAVADOC_BANNER = NO
# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
# line (until the first dot) of a Qt-style comment as the brief description. If
@@ -209,6 +227,14 @@ QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
# By default Python docstrings are displayed as preformatted text and doxygen's
# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
# doxygen's special commands can be used and the contents of the docstring
# documentation blocks is shown as doxygen documentation.
# The default value is: YES.
PYTHON_DOCSTRING = YES
# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
# documentation from any documented member that it re-implements.
# The default value is: YES.
@@ -238,14 +264,12 @@ TAB_SIZE = 4
# "Side Effects:". You can put \n's in the value part of an alias to insert
# newlines (in the resulting output). You can put ^^ in the value part of an
# alias to insert a newline as if a physical newline was in the original file.
# When you need a literal { or } or , in the value part of an alias you have to
# escape them by means of a backslash (\), this can lead to conflicts with the
# commands \{ and \} for these it is advised to use the version @{ and @} or use
# a double escape (\\{ and \\})
ALIASES =
# This tag can be used to specify a number of word-keyword mappings (TCL only).
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.
TCL_SUBST =
ALIASES = "setby{1}=@par Set by^^The \1."
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
@@ -253,7 +277,7 @@ TCL_SUBST =
# members will be omitted, etc.
# The default value is: NO.
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_FOR_C = YES
# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
# Python sources only. Doxygen will then generate output that is more tailored
@@ -275,28 +299,40 @@ OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
# sources only. Doxygen will then generate output that is more tailored for that
# language. For instance, namespaces will be presented as modules, types will be
# separated into more groups, etc.
# The default value is: NO.
OPTIMIZE_OUTPUT_SLICE = NO
# Doxygen selects the parser to use depending on the extension of the files it
# parses. With this tag you can assign which parser to use for a given
# extension. Doxygen has a built-in mapping, but you can override or extend it
# using this tag. The format is ext=language, where ext is a file extension, and
# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
# Fortran. In the later case the parser tries to guess whether the code is fixed
# or free formatted code, this is the default for Fortran type files), VHDL. For
# instance to make doxygen treat .inc files as Fortran files (default is PHP),
# and .f files as C (default is Fortran), use: inc=Fortran f=C.
# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, VHDL,
# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
# tries to guess whether the code is fixed or free formatted code, this is the
# default for Fortran type files). For instance to make doxygen treat .inc files
# as Fortran files (default is PHP), and .f files as C (default is Fortran),
# use: inc=Fortran f=C.
#
# Note: For files without extension you can use no_extension as a placeholder.
#
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen.
# the files are not read by doxygen. When specifying no_extension you should add
# * to the FILE_PATTERNS.
#
# Note see also the list of default file extension mappings.
EXTENSION_MAPPING =
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable
# documentation. See http://daringfireball.net/projects/markdown/ for details.
# documentation. See https://daringfireball.net/projects/markdown/ for details.
# The output of markdown processing is further processed by doxygen, so you can
# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
# case of backward compatibilities issues.
@@ -308,7 +344,7 @@ MARKDOWN_SUPPORT = YES
# to that level are automatically included in the table of contents, even if
# they do not have an id attribute.
# Note: This feature currently applies only to Markdown headings.
# Minimum value: 0, maximum value: 99, default value: 0.
# Minimum value: 0, maximum value: 99, default value: 5.
# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
TOC_INCLUDE_HEADINGS = 0
@@ -398,7 +434,7 @@ INLINE_GROUPED_CLASSES = NO
# Man pages) or section (for LaTeX and RTF).
# The default value is: NO.
INLINE_SIMPLE_STRUCTS = NO
INLINE_SIMPLE_STRUCTS = YES
# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
# enum is documented as struct, union, or enum with the name of the typedef. So
@@ -424,6 +460,19 @@ TYPEDEF_HIDES_STRUCT = NO
LOOKUP_CACHE_SIZE = 0
# The NUM_PROC_THREADS specifies the number threads doxygen is allowed to use
# during processing. When set to 0 doxygen will based this on the number of
# cores available in the system. You can set it explicitly to a value larger
# than 0 to get more control over the balance between CPU load and processing
# speed. At this moment only the input processing can be done using multiple
# threads. Since this is still an experimental feature the default is set to 1,
# which efficively disables parallel processing. Please report any issues you
# encounter. Generating dot graphs in parallel is controlled by the
# DOT_NUM_THREADS setting.
# Minimum value: 0, maximum value: 32, default value: 1.
NUM_PROC_THREADS = 16
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
@@ -442,7 +491,13 @@ EXTRACT_ALL = YES
# be included in the documentation.
# The default value is: NO.
EXTRACT_PRIVATE = YES
EXTRACT_PRIVATE = NO
# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
# methods of a class will be included in the documentation.
# The default value is: NO.
EXTRACT_PRIV_VIRTUAL = NO
# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
# scope will be included in the documentation.
@@ -481,6 +536,13 @@ EXTRACT_LOCAL_METHODS = YES
EXTRACT_ANON_NSPACES = NO
# If this flag is set to YES, the name of an unnamed parameter in a declaration
# will be determined by the corresponding definition. By default unnamed
# parameters remain unnamed in the output.
# The default value is: YES.
RESOLVE_UNNAMED_PARAMS = YES
# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
# undocumented members inside documented classes or files. If set to NO these
# members will be included in the various overviews, but no documentation
@@ -498,8 +560,8 @@ HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
# (class|struct|union) declarations. If set to NO, these declarations will be
# included in the documentation.
# declarations. If set to NO, these declarations will be included in the
# documentation.
# The default value is: NO.
HIDE_FRIEND_COMPOUNDS = NO
@@ -518,11 +580,18 @@ HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
# names in lower-case letters. If set to YES, upper-case letters are also
# allowed. This is useful if you have classes or files whose names only differ
# in case and if your file system supports case sensitive file names. Windows
# and Mac users are advised to set this option to NO.
# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
# able to match the capabilities of the underlying filesystem. In case the
# filesystem is case sensitive (i.e. it supports files in the same directory
# whose names only differ in casing), the option must be set to YES to properly
# deal with such files in case they appear in the input. For filesystems that
# are not case sensitive the option should be be set to NO to properly deal with
# output files written for symbols that only differ in casing, such as for two
# classes, one named CLASS and the other named Class, and to also support
# references to files without having to specify the exact matching casing. On
# Windows (including Cygwin) and MacOS, users should typically set this option
# to NO, whereas on Linux or other Unix flavors it should typically be set to
# YES.
# The default value is: system dependent.
CASE_SENSE_NAMES = YES
@@ -532,7 +601,7 @@ CASE_SENSE_NAMES = YES
# scope will be hidden.
# The default value is: NO.
HIDE_SCOPE_NAMES = NO
HIDE_SCOPE_NAMES = YES
# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
# append additional text to a page's title, such as Class Reference. If set to
@@ -571,7 +640,7 @@ INLINE_INFO = YES
# name. If set to NO, the members will appear in declaration order.
# The default value is: YES.
SORT_MEMBER_DOCS = YES
SORT_MEMBER_DOCS = NO
# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
# descriptions of file, namespace and class members alphabetically by member
@@ -754,13 +823,17 @@ WARN_IF_DOC_ERROR = YES
# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
# are documented, but have no documentation for their parameters or return
# value. If set to NO, doxygen will only warn about wrong or incomplete
# parameter documentation, but not about the absence of documentation.
# parameter documentation, but not about the absence of documentation. If
# EXTRACT_ALL is set to YES then this flag will automatically be disabled.
# The default value is: NO.
WARN_NO_PARAMDOC = NO
# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
# a warning is encountered.
# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
# at the end of the doxygen process doxygen will return with a non-zero status.
# Possible values are: NO, YES and FAIL_ON_WARNINGS.
# The default value is: NO.
WARN_AS_ERROR = NO
@@ -791,13 +864,13 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.
INPUT =
INPUT = libretro-common
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
# documentation (see: https://www.gnu.org/software/libiconv/) for the list of
# possible encodings.
# documentation (see:
# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
# The default value is: UTF-8.
INPUT_ENCODING = UTF-8
@@ -810,56 +883,17 @@ INPUT_ENCODING = UTF-8
# need to set EXTENSION_MAPPING for the extension otherwise the files are not
# read by doxygen.
#
# Note the list of default checked file patterns might differ from the list of
# default file extension mappings.
#
# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf.
# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment),
# *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, *.vhdl,
# *.ucf, *.qsf and *.ice.
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.pyw \
*.f90 \
*.f95 \
*.f03 \
*.f08 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf
FILE_PATTERNS = *.h
# The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well.
@@ -890,7 +924,11 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS =
EXCLUDE_PATTERNS = */libretro-common/rthreads/* \
*/libretro-common/formats/* \
*/libretro-common/crt/* \
*/libretro-common/samples/* \
*/libretro-common/include/glsym/*
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
@@ -901,7 +939,9 @@ EXCLUDE_PATTERNS =
# Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories use the pattern */test/*
EXCLUDE_SYMBOLS =
EXCLUDE_SYMBOLS = bool \
void \
const
# The EXAMPLE_PATH tag can be used to specify one or more files or directories
# that contain example code fragments that are included (see the \include
@@ -1012,7 +1052,7 @@ INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
# function all documented functions referencing it will be listed.
# entity all documented functions referencing it will be listed.
# The default value is: NO.
REFERENCED_BY_RELATION = NO
@@ -1049,7 +1089,7 @@ SOURCE_TOOLTIPS = YES
#
# To use it do the following:
# - Install the latest version of global
# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file
# - Make sure the INPUT points to the root of the source tree
# - Run doxygen as normal
#
@@ -1071,6 +1111,44 @@ USE_HTAGS = NO
VERBATIM_HEADERS = YES
# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
# clang parser (see:
# http://clang.llvm.org/) for more accurate parsing at the cost of reduced
# performance. This can be particularly helpful with template rich C++ code for
# which doxygen's built-in parser lacks the necessary type information.
# Note: The availability of this option depends on whether or not doxygen was
# generated with the -Duse_libclang=ON option for CMake.
# The default value is: NO.
CLANG_ASSISTED_PARSING = NO
# If clang assisted parsing is enabled and the CLANG_ADD_INC_PATHS tag is set to
# YES then doxygen will add the directory of each input to the include path.
# The default value is: YES.
CLANG_ADD_INC_PATHS = YES
# If clang assisted parsing is enabled you can provide the compiler with command
# line options that you would normally use when invoking the compiler. Note that
# the include paths will already be set by doxygen for the files and directories
# specified with INPUT and INCLUDE_PATH.
# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
CLANG_OPTIONS =
# If clang assisted parsing is enabled you can provide the clang parser with the
# path to the directory containing a file called compile_commands.json. This
# file is the compilation database (see:
# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the
# options used when the source files were built. This is equivalent to
# specifying the -p option to a clang tool, such as clang-check. These options
# will then be passed to the parser. Any options specified with CLANG_OPTIONS
# will be added as well.
# Note: The availability of this option depends on whether or not doxygen was
# generated with the -Duse_libclang=ON option for CMake.
CLANG_DATABASE_PATH =
#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
@@ -1082,20 +1160,14 @@ VERBATIM_HEADERS = YES
ALPHABETICAL_INDEX = YES
# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
# which the alphabetical index list will be split.
# Minimum value: 1, maximum value: 20, default value: 5.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
COLS_IN_ALPHA_INDEX = 5
# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
# can be used to specify a prefix (or a list of prefixes) that should be ignored
# while generating the index headers.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
IGNORE_PREFIX =
IGNORE_PREFIX = retro_ \
RETRO_
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
@@ -1227,9 +1299,9 @@ HTML_TIMESTAMP = NO
# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
# documentation will contain a main index with vertical navigation menus that
# are dynamically created via Javascript. If disabled, the navigation index will
# are dynamically created via JavaScript. If disabled, the navigation index will
# consists of multiple levels of tabs that are statically embedded in every HTML
# page. Disable this option to support browsers that do not have Javascript,
# page. Disable this option to support browsers that do not have JavaScript,
# like the Qt help browser.
# The default value is: YES.
# This tag requires that the tag GENERATE_HTML is set to YES.
@@ -1259,13 +1331,14 @@ HTML_INDEX_NUM_ENTRIES = 100
# If the GENERATE_DOCSET tag is set to YES, additional index files will be
# generated that can be used as input for Apple's Xcode 3 integrated development
# environment (see: https://developer.apple.com/tools/xcode/), introduced with
# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
# Makefile in the HTML output directory. Running make will produce the docset in
# that directory and running make install will install the docset in
# environment (see:
# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
# create a documentation set, doxygen will generate a Makefile in the HTML
# output directory. Running make will produce the docset in that directory and
# running make install will install the docset in
# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html
# for more information.
# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
# genXcode/_index.html for more information.
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
@@ -1304,8 +1377,8 @@ DOCSET_PUBLISHER_NAME = Publisher
# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
# Windows.
# (see:
# https://www.microsoft.com/en-us/download/details.aspx?id=21138) on Windows.
#
# The HTML Help Workshop contains a compiler that can convert all HTML output
# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
@@ -1335,7 +1408,7 @@ CHM_FILE =
HHC_LOCATION =
# The GENERATE_CHI flag controls if a separate .chi index file is generated
# (YES) or that it should be included in the master .chm file (NO).
# (YES) or that it should be included in the main .chm file (NO).
# The default value is: NO.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
@@ -1380,7 +1453,8 @@ QCH_FILE =
# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
# Project output. For more information please see Qt Help Project / Namespace
# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace).
# (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
# The default value is: org.doxygen.Project.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1388,7 +1462,8 @@ QHP_NAMESPACE = org.doxygen.Project
# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
# Help Project output. For more information please see Qt Help Project / Virtual
# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders).
# Folders (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
# The default value is: doc.
# This tag requires that the tag GENERATE_QHP is set to YES.
@@ -1396,28 +1471,30 @@ QHP_VIRTUAL_FOLDER = doc
# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
# filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
# Filters (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_NAME =
# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
# custom filter to add. For more information please see Qt Help Project / Custom
# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters).
# Filters (see:
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_CUST_FILTER_ATTRS =
# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
# project's filter section matches. Qt Help Project / Filter Attributes (see:
# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes).
# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
# This tag requires that the tag GENERATE_QHP is set to YES.
QHP_SECT_FILTER_ATTRS =
# The QHG_LOCATION tag can be used to specify the location of Qt's
# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
# generated .qhp file.
# The QHG_LOCATION tag can be used to specify the location (absolute path
# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to
# run qhelpgenerator on the generated .qhp file.
# This tag requires that the tag GENERATE_QHP is set to YES.
QHG_LOCATION =
@@ -1468,7 +1545,7 @@ DISABLE_INDEX = NO
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
GENERATE_TREEVIEW = NO
GENERATE_TREEVIEW = YES
# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
# doxygen will group on one line in the generated HTML documentation.
@@ -1494,6 +1571,17 @@ TREEVIEW_WIDTH = 250
EXT_LINKS_IN_WINDOW = NO
# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
# the HTML output. These images will generally look nicer at scaled resolutions.
# Possible values are: png (the default) and svg (looks nicer but requires the
# pdf2svg or inkscape tool).
# The default value is: png.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_FORMULA_FORMAT = png
# Use this tag to change the font size of LaTeX formulas included as images in
# the HTML documentation. When you change the font size after a successful
# doxygen run you need to manually remove any form_*.png images from the HTML
@@ -1514,8 +1602,14 @@ FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands
# to create new LaTeX commands to be used in formulas as building blocks. See
# the section "Including formulas" for details.
FORMULA_MACROFILE =
# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
# https://www.mathjax.org) which uses client side Javascript for the rendering
# https://www.mathjax.org) which uses client side JavaScript for the rendering
# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
# installed or if you want to formulas look prettier in the HTML output. When
# enabled you may also need to install MathJax separately and configure the path
@@ -1527,7 +1621,7 @@ USE_MATHJAX = NO
# When MathJax is enabled you can set the default output format to be used for
# the MathJax output. See the MathJax site (see:
# http://docs.mathjax.org/en/latest/output.html) for more details.
# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details.
# Possible values are: HTML-CSS (which is slower, but has the best
# compatibility), NativeMML (i.e. MathML) and SVG.
# The default value is: HTML-CSS.
@@ -1543,7 +1637,7 @@ MATHJAX_FORMAT = HTML-CSS
# Content Delivery Network so you can quickly see the result without installing
# MathJax. However, it is strongly recommended to install a local copy of
# MathJax from https://www.mathjax.org before deployment.
# The default value is: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/.
# The default value is: https://cdn.jsdelivr.net/npm/mathjax@2.
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_RELPATH = https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/
@@ -1557,7 +1651,8 @@ MATHJAX_EXTENSIONS =
# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
# of code that will be used on startup of the MathJax code. See the MathJax site
# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
# (see:
# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an
# example see the documentation.
# This tag requires that the tag USE_MATHJAX is set to YES.
@@ -1585,7 +1680,7 @@ MATHJAX_CODEFILE =
SEARCHENGINE = YES
# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
# implemented using a web server instead of a web client using Javascript. There
# implemented using a web server instead of a web client using JavaScript. There
# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
# setting. When disabled, doxygen will generate a PHP script for searching and
# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
@@ -1604,7 +1699,8 @@ SERVER_BASED_SEARCH = NO
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: https://xapian.org/).
# Xapian (see:
# https://xapian.org/).
#
# See the section "External Indexing and Searching" for details.
# The default value is: NO.
@@ -1617,8 +1713,9 @@ EXTERNAL_SEARCH = NO
#
# Doxygen ships with an example indexer (doxyindexer) and search engine
# (doxysearch.cgi) which are based on the open source search engine library
# Xapian (see: https://xapian.org/). See the section "External Indexing and
# Searching" for details.
# Xapian (see:
# https://xapian.org/). See the section "External Indexing and Searching" for
# details.
# This tag requires that the tag SEARCHENGINE is set to YES.
SEARCHENGINE_URL =
@@ -1669,21 +1766,35 @@ LATEX_OUTPUT = latex
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
# invoked.
#
# Note that when enabling USE_PDFLATEX this option is only used for generating
# bitmaps for formulas in the HTML output, but not in the Makefile that is
# written to the output directory.
# The default file is: latex.
# Note that when not enabling USE_PDFLATEX the default is latex when enabling
# USE_PDFLATEX the default is pdflatex and when in the later case latex is
# chosen this is overwritten by pdflatex. For specific output languages the
# default can have been set differently, this depends on the implementation of
# the output language.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_CMD_NAME = latex
# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
# index for LaTeX.
# Note: This tag is used in the Makefile / make.bat.
# See also: LATEX_MAKEINDEX_CMD for the part in the generated output file
# (.tex).
# The default file is: makeindex.
# This tag requires that the tag GENERATE_LATEX is set to YES.
MAKEINDEX_CMD_NAME = makeindex
# The LATEX_MAKEINDEX_CMD tag can be used to specify the command name to
# generate index for LaTeX. In case there is no backslash (\) as first character
# it will be automatically added in the LaTeX code.
# Note: This tag is used in the generated output file (.tex).
# See also: MAKEINDEX_CMD_NAME for the part in the Makefile / make.bat.
# The default value is: makeindex.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_MAKEINDEX_CMD = makeindex
# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
# documents. This may be useful for small projects and may help to save some
# trees in general.
@@ -1768,9 +1879,11 @@ LATEX_EXTRA_FILES =
PDF_HYPERLINKS = YES
# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
# the PDF file directly from the LaTeX files. Set this option to YES, to get a
# higher quality PDF documentation.
# If the USE_PDFLATEX tag is set to YES, doxygen will use the engine as
# specified with LATEX_CMD_NAME to generate the PDF file directly from the LaTeX
# files. Set this option to YES, to get a higher quality PDF documentation.
#
# See also section LATEX_CMD_NAME for selecting the engine.
# The default value is: YES.
# This tag requires that the tag GENERATE_LATEX is set to YES.
@@ -1818,6 +1931,14 @@ LATEX_BIB_STYLE = plain
LATEX_TIMESTAMP = NO
# The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute)
# path from which the emoji images will be read. If a relative path is entered,
# it will be relative to the LATEX_OUTPUT directory. If left blank the
# LATEX_OUTPUT directory will be used.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_EMOJI_DIRECTORY =
#---------------------------------------------------------------------------
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
@@ -1857,9 +1978,9 @@ COMPACT_RTF = NO
RTF_HYPERLINKS = NO
# Load stylesheet definitions from file. Syntax is similar to doxygen's config
# file, i.e. a series of assignments. You only have to provide replacements,
# missing definitions are set to their default value.
# Load stylesheet definitions from file. Syntax is similar to doxygen's
# configuration file, i.e. a series of assignments. You only have to provide
# replacements, missing definitions are set to their default value.
#
# See also section "Doxygen usage" for information on how to generate the
# default style sheet that doxygen normally uses.
@@ -1868,8 +1989,8 @@ RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
# Set optional variables used in the generation of an RTF document. Syntax is
# similar to doxygen's config file. A template extensions file can be generated
# using doxygen -e rtf extensionFile.
# similar to doxygen's configuration file. A template extensions file can be
# generated using doxygen -e rtf extensionFile.
# This tag requires that the tag GENERATE_RTF is set to YES.
RTF_EXTENSIONS_FILE =
@@ -1955,6 +2076,13 @@ XML_OUTPUT = xml
XML_PROGRAMLISTING = YES
# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
# namespace members in file scope as well, matching the HTML output.
# The default value is: NO.
# This tag requires that the tag GENERATE_XML is set to YES.
XML_NS_MEMB_FILE_SCOPE = NO
#---------------------------------------------------------------------------
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
@@ -1994,6 +2122,10 @@ DOCBOOK_PROGRAMLISTING = NO
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# Configuration options related to Sqlite3 output
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
@@ -2089,7 +2221,7 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
PREDEFINED =
PREDEFINED = DOXYGEN
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
@@ -2156,12 +2288,6 @@ EXTERNAL_GROUPS = YES
EXTERNAL_PAGES = YES
# The PERL_PATH should be the absolute path and name of the perl script
# interpreter (i.e. the result of 'which perl').
# The default file (with absolute path) is: /usr/bin/perl.
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
@@ -2173,16 +2299,7 @@ PERL_PATH = /usr/bin/perl
# powerful graphs.
# The default value is: YES.
CLASS_DIAGRAMS = YES
# You can define message sequence charts within doxygen comments using the \msc
# command. Doxygen will then run the mscgen tool (see:
# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
# documentation. The MSCGEN_PATH tag allows you to specify the directory where
# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.
MSCGEN_PATH =
CLASS_DIAGRAMS = NO
# You can include diagrams made with dia in doxygen documentation. Doxygen will
# then run dia to produce the diagram and insert it in the documentation. The
@@ -2202,9 +2319,9 @@ HIDE_UNDOC_RELATIONS = YES
# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
# Bell Labs. The other options in this section have no effect if this option is
# set to NO
# The default value is: NO.
# The default value is: YES.
HAVE_DOT = YES
HAVE_DOT = NO
# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
# to run in parallel. When set to 0 doxygen will base this on the number of
@@ -2281,10 +2398,32 @@ UML_LOOK = NO
# but if the number exceeds 15, the total amount of fields shown is limited to
# 10.
# Minimum value: 0, maximum value: 100, default value: 10.
# This tag requires that the tag HAVE_DOT is set to YES.
# This tag requires that the tag UML_LOOK is set to YES.
UML_LIMIT_NUM_FIELDS = 10
# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and
# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS
# tag is set to YES, doxygen will add type and arguments for attributes and
# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen
# will not generate fields with class member information in the UML graphs. The
# class diagrams will look similar to the default class diagrams but using UML
# notation for the relationships.
# Possible values are: NO, YES and NONE.
# The default value is: NO.
# This tag requires that the tag UML_LOOK is set to YES.
DOT_UML_DETAILS = NO
# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters
# to display on a single line. If the actual line length exceeds this threshold
# significantly it will wrapped across multiple lines. Some heuristics are apply
# to avoid ugly line breaks.
# Minimum value: 0, maximum value: 1000, default value: 17.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_WRAP_THRESHOLD = 17
# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
# collaboration graphs will show the relations between templates and their
# instances.
@@ -2358,7 +2497,9 @@ DIRECTORY_GRAPH = YES
# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
# to make the SVG files visible in IE 9+ (other browsers do not have this
# requirement).
# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
# Possible values are: png, png:cairo, png:cairo:cairo, png:cairo:gd, png:gd,
# png:gd:gd, jpg, jpg:cairo, jpg:cairo:gd, jpg:gd, jpg:gd:gd, gif, gif:cairo,
# gif:cairo:gd, gif:gd, gif:gd:gd, svg, png:gd, png:gd:gd, png:cairo,
# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
# png:gdiplus:gdiplus.
# The default value is: png.
@@ -2474,9 +2615,11 @@ DOT_MULTI_TARGETS = YES
GENERATE_LEGEND = YES
# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate
# files that are used to generate the various graphs.
#
# Note: This setting is not only used for dot files but also for msc and
# plantuml temporary files.
# The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_CLEANUP = YES
+7 -4
View File
@@ -26,6 +26,9 @@ DEF_FLAGS := -I.
ASFLAGS :=
DEFINES := -DHAVE_CONFIG_H -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64
DEFINES += -DGLOBAL_CONFIG_DIR='"$(GLOBAL_CONFIG_DIR)"'
DEFINES += -DASSETS_DIR='"$(DESTDIR)$(ASSETS_DIR)"'
DEFINES += -DFILTERS_DIR='"$(DESTDIR)$(FILTERS_DIR)"'
DEFINES += -DCORE_INFO_DIR='"$(DESTDIR)$(CORE_INFO_DIR)"'
OBJDIR_BASE := obj-unix
@@ -45,7 +48,7 @@ else
DEF_FLAGS += -ffast-math
endif
DEF_FLAGS += -Wall
DEF_FLAGS += -Wall -Wsign-compare
ifneq ($(findstring BSD,$(OS)),)
DEF_FLAGS += -DBSD
@@ -64,7 +67,7 @@ ifneq ($(findstring FPGA,$(OS)),)
endif
ifneq ($(findstring Win32,$(OS)),)
LDFLAGS += -static-libgcc -lwinmm
LDFLAGS += -static-libgcc -lwinmm -limm32
endif
include Makefile.common
@@ -110,7 +113,7 @@ endif
ifneq ($(CXX_BUILD), 1)
ifneq ($(C89_BUILD),)
CFLAGS += -std=c89 -ansi -pedantic -Werror=pedantic -Wno-long-long
CFLAGS += -std=c89 -ansi -pedantic -Werror=pedantic -Wno-long-long -Werror=declaration-after-statement
else ifeq ($(HAVE_C99), 1)
CFLAGS += $(C99_CFLAGS)
endif
@@ -223,7 +226,7 @@ $(OBJDIR)/%.o: %.S config.h config.mk $(HEADERS)
$(OBJDIR)/%.o: %.rc $(HEADERS)
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo WINDRES $<),)
$(Q)$(WINDRES) -o $@ $<
$(Q)$(WINDRES) $(DEFINES) -o $@ $<
install: $(TARGET)
mkdir -p $(DESTDIR)$(BIN_DIR) 2>/dev/null || /bin/true
-1
View File
@@ -43,7 +43,6 @@ clean:
rm -f input/*.o
rm -f tools/*.o
rm -f $(BINDIR)/retroarch
rm -f $(BINDIR)/retroarch-joyconfig
rm -f $(PNDDIR)/readme.html
rm -f retroarch
-1
View File
@@ -47,7 +47,6 @@ clean:
rm -f input/*.o
rm -f tools/*.o
rm -f $(BINDIR)/retroarch
rm -f $(BINDIR)/retroarch-joyconfig
rm -f $(PNDDIR)/readme.html
rm -f retroarch
+241 -222
View File
File diff suppressed because it is too large. Load diff
+50 -20
View File
@@ -2,13 +2,16 @@ TARGET := retroarch_3ds
LIBRETRO =
DEBUG = 0
CONSOLE_LOG = 0
GRIFFIN_BUILD = 1
HAVE_STATIC_DUMMY ?= 0
WHOLE_ARCHIVE_LINK = 0
BUILD_3DSX = 1
BUILD_3DS = 0
BUILD_CIA = 1
LIBCTRU_NO_DEPRECATION = 1
USE_CTRULIB_2 ?= 0
LOAD_WITHOUT_CORE_INFO ?= 0
APP_TITLE = RetroArch 3DS
APP_DESCRIPTION = RetroArch 3DS
@@ -50,9 +53,10 @@ endif
DEFINES :=
ifeq ($(GRIFFIN_BUILD), 1)
OBJ += griffin/griffin.o
DEFINES += -DHAVE_GRIFFIN=1 -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_RGUI -DHAVE_XMB -DHAVE_MATERIALUI -DHAVE_LIBRETRODB -DHAVE_CC_RESAMPLER
DEFINES += -DHAVE_GRIFFIN=1 -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_RGUI -DHAVE_XMB -DHAVE_LIBRETRODB -DHAVE_CC_RESAMPLER
DEFINES += -DHAVE_ZLIB -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_RBMP -DHAVE_RTGA
DEFINES += -DHAVE_NETWORKING -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_CORES
DEFINES += -DHAVE_NETWORKING -DHAVE_IFINFO -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_CORES
DEFINES += -DHAVE_UPDATE_CORE_INFO
#DEFINES += -DHAVE_UPDATE_ASSETS
DEFINES += -DHAVE_PATCH -DHAVE_RWAV
DEFINES += -DHAVE_SCREENSHOTS
@@ -60,6 +64,7 @@ ifeq ($(GRIFFIN_BUILD), 1)
DEFINES += -DHAVE_THREADS
DEFINES += -DHAVE_GFX_WIDGETS
DEFINES += -DHAVE_OVERLAY
DEFINES += -DHAVE_CORE_INFO_CACHE
#DEFINES += -DHAVE_SOCKET_LEGACY
#-DHAVE_SSL -DHAVE_BUILTINMBEDTLS -DMBEDTLS_SSL_DEBUG_ALL
#ssl is currently incompatible with griffin due to use of the "static" flag on repeating functions that will conflict when included in one file
@@ -76,7 +81,6 @@ else
HAVE_7ZIP = 1
HAVE_BUILTINZLIB = 1
HAVE_LIBRETRODB = 1
HAVE_MATERIALUI = 1
HAVE_XMB = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
@@ -86,11 +90,13 @@ else
HAVE_AUDIOMIXER = 1
HAVE_RWAV = 1
#HAVE_NETWORKING = 1
#HAVE_IFINFO = 1
#HAVE_CHEEVOS = 1
#HAVE_SOCKET_LEGACY = 1
HAVE_THREADS = 1
#HAVE_SSL = 1
#HAVE_BUILTINMBEDTLS = 1
HAVE_CORE_INFO_CACHE = 1
include Makefile.common
CFLAGS += $(DEF_FLAGS)
@@ -103,6 +109,9 @@ endif
ifeq ($(strip $(DEVKITPRO)),)
$(error "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to>devkitpro")
endif
ifeq ($(strip $(DEVKITARM)),)
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitarm")
endif
ifeq ($(strip $(CTRULIB)),)
CTRULIB = $(DEVKITPRO)/libctru
@@ -112,6 +121,10 @@ ifeq ($(strip $(USE_CTRULIB_2)),1)
CFLAGS += -DUSE_CTRULIB_2
endif
ifeq ($(LOAD_WITHOUT_CORE_INFO),1)
CFLAGS += -DLOAD_WITHOUT_CORE_INFO
endif
ifeq ($(strip $(DEVKITTOOLS)),)
ifeq ($(strip $(USE_CTRULIB_2)),1)
DEVKITTOOLS = $(DEVKITPRO)/tools
@@ -140,13 +153,17 @@ LIBDIRS := -L. -L$(CTRULIB)/lib
ARCH := -march=armv6k -mtune=mpcore -mfloat-abi=hard -marm -mfpu=vfp -mtp=soft
CFLAGS += -mword-relocations \
-fomit-frame-pointer -ffast-math \
-Werror=implicit-function-declaration \
$(ARCH)
CFLAGS += -mword-relocations \
-fomit-frame-pointer -ffast-math \
-Werror=implicit-function-declaration \
$(ARCH)
#CFLAGS += -Wall
CFLAGS += -DARM11 -D_3DS
CFLAGS += -DARM11 -D_3DS
ifeq ($(strip $(USE_CTRULIB_2)),1)
CFLAGS += -D__3DS__
endif
ifeq ($(DEBUG), 1)
CFLAGS += -O0 -g
@@ -154,6 +171,10 @@ else
CFLAGS += -O3
endif
ifeq ($(CONSOLE_LOG), 1)
CFLAGS += -DCONSOLE_LOG
endif
ifeq ($(LIBCTRU_NO_DEPRECATION), 1)
CFLAGS += -DLIBCTRU_NO_DEPRECATION
endif
@@ -164,12 +185,12 @@ ifeq ($(WHOLE_ARCHIVE_LINK), 1)
endif
CFLAGS += -I. \
-Ideps \
-Ideps/7zip \
-Ideps/stb \
-Ideps/rcheevos/include \
-Ilibretro-common/include \
-Ilibretro-common/include/compat/zlib
-Ideps \
-Ideps/7zip \
-Ideps/stb \
-Ideps/rcheevos/include \
-Ilibretro-common/include \
-Ilibretro-common/include/compat/zlib
CFLAGS += -DRARCH_INTERNAL -DRARCH_CONSOLE
CFLAGS += -DHAVE_DSP_FILTER
@@ -177,14 +198,23 @@ CFLAGS += -DHAVE_VIDEO_FILTER
CFLAGS += -DHAVE_FILTERS_BUILTIN $(DEFINES)
CFLAGS += -DHAVE_CHEATS
CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11
ASFLAGS := -g $(ARCH) -O3
LDFLAGS += -specs=ctr/3dsx_custom.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11
ASFLAGS := -g $(ARCH) -O3
LDFLAGS += -specs=ctr/3dsx_custom.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
CFLAGS += -std=gnu99 -ffast-math
LIBS := $(WHOLE_START) -lretro_ctr $(WHOLE_END) -lm
LIB_CORE :=
LIB_CORE_FULL :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIB_CORE += -lretro_ctr
LIB_CORE_FULL += libretro_ctr.a
endif
LIBS := $(WHOLE_START) $(LIB_CORE) $(WHOLE_END) -lm
ifeq ($(DEBUG), 1)
LIBS += -lctrud
@@ -210,7 +240,7 @@ all: $(TARGET)
$(TARGET): $(TARGET_3DSX) $(TARGET_3DS) $(TARGET_CIA)
$(TARGET).3dsx: $(TARGET).elf
$(TARGET).elf: $(OBJ) libretro_ctr.a
$(TARGET).elf: $(OBJ) $(LIB_CORE_FULL)
PREFIX := $(DEVKITARM)/bin/arm-none-eabi-
+10
View File
@@ -2,6 +2,7 @@ TARGET := retroarch_3ds_salamander
LIBRETRO =
DEBUG = 0
CONSOLE_LOG = 0
BUILD_3DSX = 1
BUILD_3DS = 0
BUILD_CIA = 1
@@ -35,6 +36,7 @@ OBJ := ctr/ctr_system.o \
libretro-common/lists/dir_list.o \
libretro-common/file/retro_dirent.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/file/config_file.o \
libretro-common/streams/file_stream.o \
libretro-common/vfs/vfs_implementation.o \
@@ -89,12 +91,20 @@ CFLAGS += -mword-relocations \
#CFLAGS += -Wall
CFLAGS += -DARM11 -D_3DS
ifeq ($(strip $(USE_CTRULIB_2)),1)
CFLAGS += -D__3DS__
endif
ifeq ($(DEBUG), 1)
CFLAGS += -O0 -g
else
CFLAGS += -O3
endif
ifeq ($(CONSOLE_LOG), 1)
CFLAGS += -DCONSOLE_LOG
endif
CFLAGS += -I. -Ideps/7zip -Ideps/stb -Ilibretro-common/include -Ilibretro-common/include/compat/zlib
#CFLAGS += -DRARCH_INTERNAL
+2 -1
View File
@@ -69,6 +69,7 @@ HAVE_MENU_COMMON = 1
HAVE_GFX_WIDGETS = 1
HAVE_MMAP = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
HAVE_OPENDINGUX_FBDEV = 1
HAVE_OPENGL = 1
HAVE_OPENGL1 = 0
@@ -92,13 +93,13 @@ HAVE_STRCASESTR = 1
HAVE_THREADS = 1
HAVE_TRANSLATE = 1
HAVE_UDEV = 1
HAVE_VIDEO_LAYOUT = 1
HAVE_XMB = 1
HAVE_ZLIB = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_LIBSHAKE = 1
HAVE_CORE_INFO_CACHE = 1
OS = Linux
TARGET = retroarch
+229
View File
@@ -0,0 +1,229 @@
include version.all
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------
TOPDIR ?= $(CURDIR)
DEBUG ?= 0
WHOLE_ARCHIVE_LINK = 0
HAVE_STATIC_DUMMY ?= 0
GRIFFIN_BUILD = 0
OBJ :=
DEFINES := -DHAVE_DJGPP=1 -U__linux__ -U__linux -DRARCH_INTERNAL -DHAVE_STB_VORBIS
CC := i586-pc-msdosdjgpp-gcc
CXX := i586-pc-msdosdjgpp-g++
TARGET := retrodos.exe
RARCH_CONSOLE = 0
HAVE_SHADERPIPELINE = 1
HAVE_SPIRV_CROSS = 0
HAVE_PATCH = 1
HAVE_LUA = 0
HAVE_CONFIGFILE = 1
HAVE_GFX_WIDGETS = 1
HAVE_LANGEXTRA = 1
HAVE_DR_MP3 = 1
HAVE_TRANSLATE = 0
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_AUDIOMIXER = 1
HAVE_CC_RESAMPLER = 1
HAVE_MENU_COMMON = 1
HAVE_RTGA = 1
HAVE_RPNG = 1
HAVE_RJPEG = 1
HAVE_RBMP = 1
HAVE_7ZIP = 1
HAVE_ZLIB = 1
HAVE_IMAGEVIEWER = 1
HAVE_BUILTINZLIB = 1
HAVE_LIBRETRODB = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_FILTERS_BUILTIN = 1
HAVE_MENU = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_RUNAHEAD = 1
HAVE_NETWORKING = 0
HAVE_IFINFO = 0
HAVE_NETPLAYDISCOVERY = 0
HAVE_OVERLAY := 1
HAVE_STB_FONT = 1
HAVE_COMMAND := 1
HAVE_STDIN_CMD := 1
HAVE_CMD := 1
HAVE_CHEEVOS = 0
HAVE_CHD = 0 # disabled due to static libretro-common and libchdr conflicts between different cores
HAVE_STB_VORBIS = 1
HAVE_IBXM = 1
HAVE_CORE_INFO_CACHE = 1
HAVE_XDELTA = 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_RGUI = 1
HAVE_MATERIALUI = 0
HAVE_XMB = 0
HAVE_OZONE = 0
OBJ := \
frontend/drivers/platform_dos.o \
gfx/drivers/vga_gfx.o \
input/drivers/dos_input.o \
input/drivers_joypad/dos_joypad.o
include Makefile.common
#---------------------------------------------------------------------------------
# TARGET is the name of the output
# BUILD is the directory where object files & intermediate files will be placed
# SOURCES is a list of directories containing source code
# DATA is a list of directories containing data files
# INCLUDES is a list of directories containing header files
# EXEFS_SRC is the optional input directory containing data copied into exefs, if anything this normally should only contain "main.npdm".
# ROMFS is the directory containing data to be added to RomFS, relative to the Makefile (Optional)
#
# NO_ICON: if set to anything, do not use icon.
# NO_NACP: if set to anything, no .nacp file is generated.
# APP_TITLE is the name of the app stored in the .nacp file (Optional)
# APP_AUTHOR is the author of the app stored in the .nacp file (Optional)
# APP_VERSION is the version of the app stored in the .nacp file (Optional)
# APP_TITLEID is the titleID of the app stored in the .nacp file (Optional)
# ICON is the filename of the icon (.jpg), relative to the project folder.
# If not set, it attempts to use one of the following (in this order):
# - <Project name>.jpg
# - icon.jpg
# - <libnx folder>/default_icon.jpg
#---------------------------------------------------------------------------------
BUILD := build
SOURCES := $(CURDIR)/source
DATA := data
INCLUDES := include
EXEFS_SRC := exefs_src
APP_TITLE := RetroArch
APP_VERSION := $(RARCH_VERSION)
APP_AUTHOR := libretro Team
APP_ICON := pkg/libnx/retroarch.jpg
#---------------------------------------------------------------------------------
# options for code generation
#---------------------------------------------------------------------------------
ARCH :=
CFLAGS := -g -Wall -O3 -fcommon -ffast-math -ffunction-sections \
$(ARCH) $(DEFINES) $(INCLUDE_DIRS)
CFLAGS += $(INCLUDE)
ifeq ($(HAVE_FILTERS_BUILTIN), 1)
CFLAGS += -DHAVE_FILTERS_BUILTIN
endif
ifeq ($(strip $(HAVE_STATIC_DUMMY)),1)
CFLAGS += -DHAVE_STATIC_DUMMY=1
endif
CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11
ASFLAGS := -g $(ARCH)
LDFLAGS = $(ARCH) -Wl,--allow-multiple-definition -Wl,-Map,$(notdir $*.map)
# add things from Makefile.common
CFLAGS += $(DEF_FLAGS)
LIBS := -lstdc++ -lm
#---------------------------------------------------------------------------------
# no real need to edit anything past this point unless you need to add additional
# rules for different file extensions
#---------------------------------------------------------------------------------
ifneq ($(BUILD),$(notdir $(CURDIR)))
#---------------------------------------------------------------------------------
export OUTPUT := $(TARGET)
export TOPDIR := $(CURDIR)
export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
$(foreach dir,$(DATA),$(CURDIR)/$(dir))
export DEPSDIR := $(CURDIR)/
CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
export OFILES := $(OBJ)
ifeq ($(strip $(HAVE_STATIC_DUMMY)),)
OFILES += libretro_libnx.a
endif
export HFILES_BIN := $(addsuffix .h,$(subst .,_,$(BINFILES)))
export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
-I$(CURDIR)/$(BUILD)
export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)
export BUILD_EXEFS_SRC := $(TOPDIR)/$(EXEFS_SRC)
ifneq ($(APP_TITLEID),)
export NACPFLAGS += --titleid=$(APP_TITLEID)
endif
ifneq ($(ROMFS),)
export NROFLAGS += --romfsdir=$(CURDIR)/$(ROMFS)
endif
LIB_CORE :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIB_CORE += -lretro_dos
endif
DEPENDS_TMP := $(OFILES:.o=.d)
DEPENDS := $(filter-out libretro_libnx.a,$(DEPENDS_TMP))
.PHONY: clean all
#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
all : $(OUTPUT)
$(OUTPUT): $(OBJ)
$(CXX) -o $@ $(LDFLAGS) $(LIBDIRS) $(OBJ) $(PLATEXTRA) -L. $(LIB_CORE) $(LIBS)
%.o: %.c
$(CC) -c -o $@ $(CFLAGS) $<
%.o: %.cpp
$(CXX) -c -o $@ $(CFLAGS) $<
clean:
rm -f $(DEPENDS) $(OBJ) $(OUTPUT)
#---------------------------------------------------------------------------------
# you need a rule like this for each extension you use as binary data
#---------------------------------------------------------------------------------
%.bin.o %_bin.h : %.bin
#---------------------------------------------------------------------------------
@echo $(notdir $<)
@$(bin2o)
#---------------------------------------------------------------------------------------
endif
#---------------------------------------------------------------------------------------
+64 -16
View File
@@ -1,6 +1,8 @@
HAVE_STATIC_DUMMY ?= 0
ifeq ($(TARGET),)
ifeq ($(LIBRETRO),)
TARGET := retroarch.js
LIBRETRO = dummy
else
TARGET := $(LIBRETRO)_libretro.js
endif
@@ -9,12 +11,11 @@ endif
EOPT = USE_ZLIB=1 # Emscripten specific options
EOPTS = $(addprefix -s $(EMPTY), $(EOPT)) # Add '-s ' to each option
PTHREAD = 0
OS = Emscripten
OBJ :=
DEFINES := -DRARCH_INTERNAL -DHAVE_MAIN -s USE_PTHREADS=$(PTHREAD)
DEFINES := -DRARCH_INTERNAL -DHAVE_MAIN
DEFINES += -DHAVE_FILTERS_BUILTIN
HAVE_PATCH = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_OVERLAY = 1
@@ -22,7 +23,6 @@ HAVE_GLSL = 1
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_AUDIOMIXER = 1
HAVE_VIDEO_LAYOUT = 0
HAVE_CC_RESAMPLER = 1
HAVE_EGL = 1
HAVE_OPENGLES = 1
@@ -40,8 +40,22 @@ HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_STB_FONT = 1
HAVE_CONFIGFILE = 1
HAVE_COMMAND = 1
HAVE_STDIN_CMD = 1
HAVE_CHEATS = 1
HAVE_IBXM = 1
HAVE_CORE_INFO_CACHE = 1
HAVE_7ZIP = 1
HAVE_BSV_MOVIE = 1
HAVE_AL = 1
# WARNING -- READ BEFORE ENABLING
# The rwebaudio driver is known to have several audio bugs, such as
# minor crackling, or the entire page freezing/crashing.
# It works perfectly on chrome, but even firefox has really bad audio quality.
# I should also note, the driver on iOS is completely broken (crashes the page).
# You have been warned.
HAVE_RWEBAUDIO = 0
ASYNC ?= 0
ifeq ($(LIBRETRO), mupen64plus)
@@ -53,6 +67,8 @@ ifeq ($(LIBRETRO), tyrquake)
LTO = 0
endif
PTHREAD ?= 0
MEMORY ?= 134217728
PRECISE_F32 = 1
@@ -62,17 +78,37 @@ OBJDIR := obj-emscripten
#if you compile with SDL2 flag add this Emscripten flag "-s USE_SDL=2" to LDFLAGS:
LIBS := -s USE_ZLIB=1
LDFLAGS := -L. --no-heap-copy -s $(LIBS) -s TOTAL_MEMORY=$(MEMORY) -s NO_EXIT_RUNTIME=0 -s FULL_ES2=1 -s "EXTRA_EXPORTED_RUNTIME_METHODS=['callMain']" \
-s ALLOW_MEMORY_GROWTH=1 -s EXPORTED_FUNCTIONS="['_main', '_malloc', '_cmd_savefiles', '_cmd_save_state', '_cmd_load_state', '_cmd_take_screenshot']" \
--js-library emscripten/library_rwebaudio.js \
--js-library emscripten/library_rwebcam.js \
--js-library emscripten/library_errno_codes.js
LDFLAGS := -L. --no-heap-copy -s $(LIBS) -s TOTAL_MEMORY=$(MEMORY) -s NO_EXIT_RUNTIME=0 -s FULL_ES2=1 \
-s "EXPORTED_RUNTIME_METHODS=['callMain', 'FS', 'PATH', 'ERRNO_CODES']" \
-s ALLOW_MEMORY_GROWTH=1 -s "EXPORTED_FUNCTIONS=['_main', '_malloc', '_cmd_savefiles', '_cmd_save_state', '_cmd_load_state', '_cmd_take_screenshot']" \
-s MODULARIZE=1 -s EXPORT_ES6=1 -s EXPORT_NAME="libretro_$(subst -,_,$(LIBRETRO))" \
-s DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1 \
--js-library emscripten/library_errno_codes.js \
--js-library emscripten/library_rwebcam.js
ifeq ($(HAVE_RWEBAUDIO), 1)
LDFLAGS += --js-library emscripten/library_rwebaudio.js
DEFINES += -DHAVE_RWEBAUDIO
endif
ifeq ($(HAVE_AL), 1)
LDFLAGS += -lopenal
DEFINES += -DHAVE_AL
ASYNC = 1
endif
ifneq ($(PTHREAD), 0)
LDFLAGS += -s USE_PTHREADS=$(PTHREAD) -s PTHREAD_POOL_SIZE=2
LDFLAGS += -s WASM_MEM_MAX=1073741824 -pthread -s PTHREAD_POOL_SIZE=$(PTHREAD)
CFLAGS += -pthread
HAVE_THREADS=1
else
HAVE_THREADS=0
endif
ifeq ($(ASYNC), 1)
LDFLAGS += -s ASYNCIFY=$(ASYNC)
LDFLAGS += -s ASYNCIFY=$(ASYNC) -s ASYNCIFY_STACK_SIZE=8192
ifeq ($(DEBUG), 1)
LDFLAGS += -s ASYNCIFY_DEBUG=1 # -s ASYNCIFY_ADVISE
endif
endif
ifeq ($(HAVE_SDL2), 1)
@@ -83,15 +119,22 @@ endif
include Makefile.common
CFLAGS += $(DEF_FLAGS) -Ideps -Ideps/stb
libretro = libretro_emscripten.bc
libretro :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
libretro += libretro_emscripten.bc
endif
ifneq ($(V), 1)
Q := @
endif
ifeq ($(DEBUG), 1)
LDFLAGS += -O0 -g
CFLAGS += -O0 -g
LDFLAGS += -O0 -g -gsource-map -s SAFE_HEAP=1 -s STACK_OVERFLOW_CHECK=2 -s ASSERTIONS=1
CFLAGS += -O0 -g -gsource-map -s SAFE_HEAP=1 -s SAFE_HEAP_LOG=1 -s STACK_OVERFLOW_CHECK=2 -s ASSERTIONS=1
else
LDFLAGS += -O3 -s WASM=1
# WARNING: some optimizations can break some cores (ex: LTO breaks tyrquake)
@@ -102,8 +145,13 @@ else
CFLAGS += -O3
endif
CFLAGS += -Wall -I. -Ilibretro-common/include -std=gnu99 $(LIBS) \
-s EXPORTED_FUNCTIONS="['_main', '_malloc', '_cmd_savefiles', '_cmd_save_state', '_cmd_take_screenshot']"
# 128 * 1024, double the usual emscripten stack size
LDFLAGS += -s STACK_SIZE=131072
LDFLAGS += --extern-pre-js emscripten/pre.js
CFLAGS += -Wall -I. -Ilibretro-common/include -std=gnu99 #\
# -s EXPORTED_FUNCTIONS="['_main', '_malloc', '_cmd_savefiles', '_cmd_save_state', '_cmd_take_screenshot']"
RARCH_OBJ := $(addprefix $(OBJDIR)/,$(OBJ))
+69 -69
View File
@@ -66,7 +66,6 @@ SHADER_CG_DIR := media/shaders_cg
OVERLAY_DIR := media/overlays
SHADER_GLSL_DIR := media/shaders_glsl
PYTHON2 := python2$(EXE_EXT)
PYTHON3 := python3$(EXE_EXT)
GIT := git$(EXE_EXT)
@@ -122,14 +121,20 @@ else ifeq ($(libogc_platform), 1)
CXX = $(DEVKITPPC)/bin/powerpc-eabi-g++$(EXE_EXT)
LD = $(DEVKITPPC)/bin/powerpc-eabi-ld$(EXE_EXT)
ELF2DOL = $(DEVKITPPC)/bin/elf2dol$(EXE_EXT)
# Check whether ELF2DOL executable exists
# (path has changed in more recent toolchains)
ifeq ("$(wildcard $(ELF2DOL))","")
ELF2DOL = $(DEVKITPRO)/tools/bin/elf2dol$(EXE_EXT)
endif
EXT_TARGET := $(TARGET_NAME)_$(platform).dol
EXT_INTER_TARGET := $(TARGET_NAME)_$(platform).elf
INCLUDE += -I. -I$(DEVKITPRO)/libogc/include -Iwii/libogc/include
INCLUDE += -I.
ifeq ($(EXTERNAL_LIBOGC), 1)
CFLAGS += -DEXTERNAL_LIBOGC
CXXFLAGS += -DEXTERNAL_LIBOGC
INCLUDE += -I$(DEVKITPRO)/libogc/include
ifeq ($(platform), ngc)
LIBDIRS += -L$(DEVKITPRO)/libogc/lib/cube
@@ -140,6 +145,7 @@ else ifeq ($(libogc_platform), 1)
else
CFLAGS += -DINTERNAL_LIBOGC
CXXFLAGS += -DINTERNAL_LIBOGC
INCLUDE += -Iwii/libogc/include
ifeq ($(platform), ngc)
LIBDIRS += -Lwii/libogc/libs/cube
@@ -208,7 +214,6 @@ else ifeq ($(libogc_platform), 1)
HAVE_RTGA := 1
HAVE_IBXM := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_CONFIGFILE := 1
@@ -219,6 +224,7 @@ else ifeq ($(libogc_platform), 1)
HAVE_AUDIOMIXER := 1
HAVE_RWAV := 1
RARCH_CONSOLE = 1
HAVE_CORE_INFO_CACHE := 1
ifeq ($(platform), wii)
#HAVE_LANGEXTRA := 1
@@ -286,6 +292,7 @@ else ifeq ($(platform), psp1)
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
ifeq ($(BUILD_PRX), 1)
LDFLAGS += $(addprefix -L,$(PSPSDK)/lib) -specs=$(PSPSDK)/lib/prxspecs -Wl,-q,-T$(PSPSDK)/lib/linkfile.prx $(LDFLAGS)
@@ -337,8 +344,9 @@ else ifeq ($(platform), vita)
HAVE_7ZIP := 1
HAVE_VITA2D := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -348,6 +356,7 @@ else ifeq ($(platform), vita)
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
else ifeq ($(platform), windows_msvc6_x86)
HAVE_RPNG := 1
HAVE_RJPEG := 1
@@ -356,10 +365,10 @@ else ifeq ($(platform), windows_msvc6_x86)
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 0
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_IFINFO := 0
HAVE_NETWORK_CMD := 0
HAVE_NETPLAYDISCOVERY := 0
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -374,6 +383,7 @@ else ifeq ($(platform), windows_msvc6_x86)
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -402,10 +412,10 @@ else ifeq ($(platform), windows_msvc2003_x86)
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 0
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -421,6 +431,7 @@ else ifeq ($(platform), windows_msvc2003_x86)
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_GFX_WIDGETS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -456,10 +467,10 @@ else ifeq ($(platform), windows_msvc2005_x86)
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 0
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_OZONE := 1
@@ -483,6 +494,7 @@ else ifeq ($(platform), windows_msvc2005_x86)
HAVE_VIDEO_FILTER := 1
HAVE_FILTERS_BUILTIN := 1
HAVE_GFX_WIDGETS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -492,7 +504,9 @@ else ifeq ($(platform), windows_msvc2005_x86)
PLATCFLAGS += -D_WIN32 -D_WIN32_WINNT=0x0410 -D__STDC_CONSTANT_MACROS -D_MBCS
PLATCFLAGS += -DHAVE_OPENGL -DHAVE_OPENGL1 -DHAVE_GLSL -DHAVE_OZONE -DHAVE_GFX_WIDGETS -DHAVE_CC_RESAMPLER
PLATCFLAGS += -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DHAVE_CDROM
PLATCFLAGS += -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DHAVE_CDROM
PLATCFLAGS += -bigobj
LDFLAGS += -MANIFEST shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib msimg32.lib
@@ -525,6 +539,7 @@ else ifeq ($(platform), windows_msvc2005_x86)
endif
else ifneq (,$(findstring windows_msvc2010,$(platform)))
HAVE_GDI := 1
HAVE_CHEEVOS := 1
HAVE_SCREENSHOTS := 1
HAVE_REWIND := 1
HAVE_AUDIOMIXER := 1
@@ -536,10 +551,10 @@ else ifneq (,$(findstring windows_msvc2010,$(platform)))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_OZONE := 1
@@ -563,6 +578,7 @@ else ifneq (,$(findstring windows_msvc2010,$(platform)))
HAVE_VIDEO_FILTER := 1
HAVE_FILTERS_BUILTIN := 1
HAVE_GFX_WIDGETS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -574,7 +590,9 @@ else ifneq (,$(findstring windows_msvc2010,$(platform)))
PLATCFLAGS += -D__i686__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS
PLATCFLAGS += -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA
PLATCFLAGS += -DHAVE_OPENGL -DHAVE_OPENGL1 -DHAVE_OZONE
PLATCFLAGS += -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DWIN32 -DHAVE_CDROM
PLATCFLAGS += -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DWIN32 -DHAVE_CDROM
PLATCFLAGS += -DHAVE_GFX_WIDGETS
PLATCFLAGS += -bigobj
@@ -629,10 +647,10 @@ else ifneq (,$(findstring windows_msvc2012,$(platform)))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -649,6 +667,7 @@ else ifneq (,$(findstring windows_msvc2012,$(platform)))
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -657,8 +676,10 @@ else ifneq (,$(findstring windows_msvc2012,$(platform)))
LD = link.exe
PLATCFLAGS += -D_WIN32 -D__STDC_CONSTANT_MACROS -D_MBCS
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DWIN32 -DHAVE_CDROM
LDFLAGS += shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib iphlpapi.lib
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DWIN32 -DHAVE_CDROM
LDFLAGS += shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib iphlpapi.lib
PlatformSuffix = $(subst windows_msvc2012_,,$(platform))
@@ -713,10 +734,10 @@ else ifneq (,$(findstring windows_msvc2013,$(platform)))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -733,6 +754,7 @@ else ifneq (,$(findstring windows_msvc2013,$(platform)))
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -741,8 +763,10 @@ else ifneq (,$(findstring windows_msvc2013,$(platform)))
LD = link.exe
PLATCFLAGS += -D_WIN32 -D__STDC_CONSTANT_MACROS -D_MBCS
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DWIN32 -DHAVE_CDROM
LDFLAGS += shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib iphlpapi.lib
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DWIN32 -DHAVE_CDROM
LDFLAGS += shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib iphlpapi.lib
PlatformSuffix = $(subst windows_msvc2013_,,$(platform))
@@ -797,10 +821,10 @@ else ifneq (,$(findstring windows_msvc2015,$(platform)))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -817,6 +841,7 @@ else ifneq (,$(findstring windows_msvc2015,$(platform)))
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
@@ -826,7 +851,9 @@ else ifneq (,$(findstring windows_msvc2015,$(platform)))
PLATCFLAGS += -utf-8
PLATCFLAGS += -D_WIN32 -D__STDC_CONSTANT_MACROS -D_MBCS
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DWIN32 -DHAVE_CDROM
PLATCFLAGS += -D__i686__ -D__MMX__ -D__SSE__ -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS -D_WINDOWS -DHAVE_CC_RESAMPLER -DHAVE_GL_SYNC -DHAVE_GLSL -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_OPENGL -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DWIN32 -DHAVE_CDROM
LDFLAGS += shell32.lib user32.lib gdi32.lib comdlg32.lib winmm.lib ole32.lib iphlpapi.lib
PlatformSuffix = $(subst windows_msvc2015_,,$(platform))
@@ -896,10 +923,10 @@ else ifeq (qnx,$(platform))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -915,6 +942,7 @@ else ifeq (qnx,$(platform))
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
CC=qcc -Vgcc_ntoarmv7le
CXX=QCC -Vgcc_ntoarmv7le
@@ -923,7 +951,9 @@ else ifeq (qnx,$(platform))
LDFLAGS += -g
endif
PLATCFLAGS += -DHAVE_SHADERPIPELINE -DHAVE_OPENGL -DHAVE_OPENGLES -DHAVE_OPENGLES2 -DHAVE_OZONE -DHAVE_CC_RESAMPLER -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_FBO -DHAVE_GL_SYNC -DHAVE_GLSLANG -DHAVE_BUILTINGLSLANG -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_RUNAHEAD -DHAVE_GFX_WIDGETS -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SPIRV_CROSS -DHAVE_STB_FONT -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DHAVE_XMB -DRARCH_INTERNAL -DWANT_GLSLANG -DHAVE_XCB -DHAVE_EGL -DHAVE_BB10 -DHAVE_GLSL -DHAVE_AL -DHAVE_BSV_MOVIE -DRARCH_MOBILE
PLATCFLAGS += -DHAVE_SHADERPIPELINE -DHAVE_OPENGL -DHAVE_OPENGLES -DHAVE_OPENGLES2 -DHAVE_OZONE -DHAVE_CC_RESAMPLER -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_GL_SYNC -DHAVE_GLSLANG -DHAVE_BUILTINGLSLANG -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_RUNAHEAD -DHAVE_GFX_WIDGETS -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SPIRV_CROSS -DHAVE_STB_FONT -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DHAVE_XMB -DRARCH_INTERNAL -DWANT_GLSLANG -DHAVE_XCB -DHAVE_EGL -DHAVE_BB10 -DHAVE_GLSL -DHAVE_AL -DHAVE_BSV_MOVIE -DRARCH_MOBILE
EXT_TARGET := $(TARGET_NAME)
EXT_INTER_TARGET := $(TARGET_NAME)
INCLUDE += -Ilibretro-common/include -Igfx/include -Ideps -Ideps/stb -Ideps/rcheevos/include -Ideps/SPIRV-Cross -Ideps/glslang -I.
@@ -940,10 +970,10 @@ else ifneq (,$(findstring unix,$(platform)))
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_STB_FONT := 1
@@ -959,53 +989,15 @@ else ifneq (,$(findstring unix,$(platform)))
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
PLATCFLAGS += -D__MMX__ -D__SSE__ -DHAVE_OPENGL -DHAVE_OPENGL1 -DHAVE_GLSL -DHAVE_SHADERPIPELINE -DHAVE_OZONE -DHAVE_CC_RESAMPLER -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_FBO -DHAVE_GL_SYNC -DHAVE_SLANG -DHAVE_GLSLANG -DHAVE_BUILTINGLSLANG -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_RUNAHEAD -DHAVE_GFX_WIDGETS -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SPIRV_CROSS -DHAVE_STB_FONT -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DHAVE_VULKAN -DHAVE_XMB -DRARCH_INTERNAL -DWANT_GLSLANG -DHAVE_X11 -DHAVE_XCB -DHAVE_UDEV -DHAVE_BSV_MOVIE -DHAVE_PULSE
PLATCFLAGS += -D__MMX__ -D__SSE__ -DHAVE_OPENGL -DHAVE_OPENGL1 -DHAVE_GLSL -DHAVE_SHADERPIPELINE -DHAVE_OZONE -DHAVE_CC_RESAMPLER -DHAVE_CHEEVOS -DRC_DISABLE_LUA -DHAVE_GL_SYNC -DHAVE_SLANG -DHAVE_GLSLANG -DHAVE_BUILTINGLSLANG -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_RUNAHEAD -DHAVE_GFX_WIDGETS -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SPIRV_CROSS -DHAVE_STB_FONT -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
PLATCFLAGS += -DHAVE_UPDATE_CORE_INFO
PLATCFLAGS += -DHAVE_VULKAN -DHAVE_XMB -DRARCH_INTERNAL -DWANT_GLSLANG -DHAVE_X11 -DHAVE_XCB -DHAVE_UDEV -DHAVE_BSV_MOVIE -DHAVE_PULSE
EXT_TARGET := $(TARGET_NAME)
EXT_INTER_TARGET := $(TARGET_NAME)
INCLUDE += -Ilibretro-common/include -Igfx/include -Ideps -Ideps/stb -Ideps/rcheevos/include -Ideps/SPIRV-Cross -Ideps/glslang -I.
LIBS += -ldl -lm -lpthread -lGL -ludev -lpulse -lX11 -lX11-xcb -lXxf86vm
else ifeq (dos,$(platform))
HAVE_RPNG := 1
HAVE_RJPEG := 1
HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 0
HAVE_NETWORK_CMD := 0
HAVE_NETPLAYDISCOVERY := 0
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 0
HAVE_XMB := 0
HAVE_STB_FONT := 1
HAVE_THREADS := 0
HAVE_LIBRETRODB := 1
HAVE_COMMAND := 1
HAVE_STDIN_CMD := 1
HAVE_CMD := 1
HAVE_DYLIB := 0
HAVE_DYNAMIC := 0
HAVE_GRIFFIN_CPP := 0
WANT_GLSLANG := 0
HAVE_CONFIGFILE := 1
HAVE_PATCH := 0
HAVE_CHEATS := 0
CC=i586-pc-msdosdjgpp-gcc
CXX=i586-pc-msdosdjgpp-g++
ifeq ($(DEBUG), 1)
LDFLAGS += -g
endif
PLATCFLAGS += -DHAVE_SHADERPIPELINE -DHAVE_CC_RESAMPLER -DRC_DISABLE_LUA -DHAVE_FBO -DHAVE_IMAGEVIEWER -DHAVE_LANGEXTRA -DHAVE_GFX_WIDGETS -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SPIRV_CROSS -DHAVE_STB_FONT -DRARCH_INTERNAL -DHAVE_XCB
TARGET_NAME := retrodos
EXT_TARGET := $(TARGET_NAME).exe
EXT_INTER_TARGET := $(TARGET_NAME).exe
INCLUDE += -Ilibretro-common/include -Igfx/include -Ideps -Ideps/stb -Ideps/SPIRV-Cross -Ideps/glslang -I.
LIBS += -lm
LIBDIRS += -L.
endif
ifneq (,$(findstring msvc,$(platform)))
@@ -1125,14 +1117,14 @@ ifeq ($(HAVE_OVERLAY), 1)
CFLAGS += -DHAVE_OVERLAY
endif
ifeq ($(HAVE_VIDEO_LAYOUT), 1)
CFLAGS += -DHAVE_VIDEO_LAYOUT
endif
ifeq ($(HAVE_NETWORKING), 1)
CFLAGS += -DHAVE_NETWORKING
endif
ifeq ($(HAVE_IFINFO), 1)
CFLAGS += -DHAVE_IFINFO
endif
ifeq ($(HAVE_NETPLAYDISCOVERY), 1)
CFLAGS += -DHAVE_NETPLAYDISCOVERY
endif
@@ -1141,6 +1133,10 @@ ifeq ($(RARCH_CONSOLE), 1)
CFLAGS += -DRARCH_CONSOLE
endif
ifeq ($(HAVE_CORE_INFO_CACHE), 1)
CFLAGS += -DHAVE_CORE_INFO_CACHE
endif
ifeq ($(RARCH_MOBILE), 1)
CFLAGS += -DRARCH_MOBILE
endif
@@ -1179,6 +1175,10 @@ ifeq ($(HAVE_FILTERS_BUILTIN), 1)
CFLAGS += -DHAVE_FILTERS_BUILTIN
endif
ifeq ($(HAVE_WINDOW_OFFSET), 1)
CFLAGS += -DHAVE_WINDOW_OFFSET
endif
ifeq ($(HAVE_THREADS), 1)
CFLAGS += -DHAVE_THREADS
+250
View File
@@ -0,0 +1,250 @@
#########################
## Toolchain variables ##
#########################
# Default toolchain directory
TOOLCHAIN_DIR="$(HOST_DIR)"
# All toolchain-related variables may be
# overridden via the command line
ifdef GCW0_CC
CC = $(GCW0_CC)
else
CC = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-gcc
endif
ifdef GCW0_CXX
CXX = $(GCW0_CXX)
else
CXX = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-g++
endif
ifdef GCW0_STRIP
STRIP = $(GCW0_STRIP)
else
STRIP = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-strip
endif
GCW0_SDL_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-buildroot-linux-gnueabi/sysroot/usr/bin/sdl-config
GCW0_FREETYPE_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-buildroot-linux-gnueabi/sysroot/usr/bin/freetype-config
GCW0_INC_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include
GCW0_LIB_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib
#########################
#########################
PACKAGE_NAME = retroarch
DEBUG ?= 0
MIYOO = 1
DINGUX = 1
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_7ZIP = 1
HAVE_AL = 0
HAVE_ALSA = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_FILTERS_BUILTIN = 1
HAVE_BUILTINMBEDTLS = 0
HAVE_BUILTINZLIB = 1
HAVE_C99 = 1
HAVE_CC = 1
HAVE_CC_RESAMPLER = 1
HAVE_CHD = 1
HAVE_COMMAND = 0
HAVE_CXX = 1
HAVE_DR_MP3 = 1
HAVE_DYNAMIC = 1
HAVE_EGL = 0
HAVE_FREETYPE = 0
HAVE_GDI = 1
HAVE_GETADDRINFO = 0
HAVE_GETOPT_LONG = 1
HAVE_GLSL = 0
HAVE_HID = 0
HAVE_IBXM = 1
HAVE_IMAGEVIEWER = 0
HAVE_LANGEXTRA = 0
HAVE_LIBRETRODB = 1
HAVE_MENU = 1
HAVE_MENU_COMMON = 1
HAVE_GFX_WIDGETS = 0
HAVE_MMAP = 1
HAVE_OPENDINGUX_FBDEV = 0
HAVE_OPENGL = 0
HAVE_OPENGL1 = 0
HAVE_OPENGLES = 0
HAVE_OPENGLES3 = 0
HAVE_OPENGL_CORE = 0
HAVE_OPENSSL = 0
HAVE_OVERLAY = 0
HAVE_RBMP = 1
HAVE_RJPEG = 1
HAVE_RPILED = 0
HAVE_RPNG = 1
HAVE_RUNAHEAD = 0
HAVE_SDL_DINGUX = 1
HAVE_SHADERPIPELINE = 0
HAVE_STB_FONT = 0
HAVE_STB_IMAGE = 0
HAVE_STB_VORBIS = 0
HAVE_STDIN_CMD = 0
HAVE_STRCASESTR = 1
HAVE_THREADS = 1
HAVE_UDEV = 0
HAVE_RGUI = 1
HAVE_MATERIALUI = 0
HAVE_XMB = 0
HAVE_OZONE = 0
HAVE_ZLIB = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 0
HAVE_CORE_INFO_CACHE = 1
#HAVE_TINYALSA = 1
HAVE_NEAREST_RESAMPLER = 1
OS = Linux
TARGET = retroarch
OBJ :=
LINK := $(CXX)
DEF_FLAGS := -march=armv5te -mtune=arm926ej-s -ffast-math -fomit-frame-pointer
DEF_FLAGS += -ffunction-sections -fdata-sections
DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOO=1 -DDINGUX -MMD
DEF_FLAGS += -Wall -Wno-unused-variable -flto
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE
LIBS := -ldl -lz -lrt -pthread -lasound
CFLAGS :=
CXXFLAGS := -fno-exceptions -fno-rtti -std=c++11 -D__STDC_CONSTANT_MACROS
ASFLAGS :=
LDFLAGS := -Wl,--gc-sections
INCLUDE_DIRS = -I$(GCW0_INC_DIR)
LIBRARY_DIRS = -L$(GCW0_LIB_DIR)
DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
DEFINES += -DHAVE_C99=1 -DHAVE_CXX=1
DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1
DEFINES += -DHAVE_FILTERS_BUILTIN -DHAVE_ALSA
SDL_DINGUX_CFLAGS := $(shell $(GCW0_SDL_CONFIG) --cflags)
SDL_DINGUX_LIBS := $(shell $(GCW0_SDL_CONFIG) --libs)
FREETYPE_CFLAGS := $(shell $(GCW0_FREETYPE_CONFIG) --cflags)
FREETYPE_LIBS := $(shell $(GCW0_FREETYPE_CONFIG) --libs)
MMAP_LIBS = -lc
OBJDIR_BASE := obj-unix
ifeq ($(DEBUG), 1)
OBJDIR := $(OBJDIR_BASE)/debug
DEF_FLAGS += -O0 -g -DDEBUG -D_DEBUG
else
OBJDIR := $(OBJDIR_BASE)/release
DEF_FLAGS += -O2 -DNDEBUG
endif
include Makefile.common
DEF_FLAGS += $(INCLUDE_DIRS)
LDFLAGS += $(CFLAGS) $(CXXFLAGS) $(DEF_FLAGS)
CFLAGS += $(DEF_FLAGS)
CXXFLAGS += $(DEF_FLAGS)
HEADERS = $(wildcard */*/*.h) $(wildcard */*.h) $(wildcard *.h)
Q := @
RARCH_OBJ := $(addprefix $(OBJDIR)/,$(OBJ))
all: $(TARGET)
-include $(RARCH_OBJ:.o=.d)
SYMBOL_MAP := -Wl,-Map=output.map
$(TARGET): $(RARCH_OBJ)
@$(if $(Q), $(shell echo echo LD $@),)
$(Q)$(LINK) -o $@ $(RARCH_OBJ) $(LIBS) $(LDFLAGS) $(LIBRARY_DIRS)
ifeq ($(STRIP_BIN),1)
$(STRIP) --strip-unneeded $(TARGET)
endif
$(OBJDIR)/%.o: %.c
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo CC $<),)
$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c -o $@ $<
$(OBJDIR)/%.o: %.cpp
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo CXX $<),)
$(Q)$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(DEFINES) -MMD -c -o $@ $<
$(OBJDIR)/%.o: %.m
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo OBJC $<),)
$(Q)$(CXX) $(OBJCFLAGS) $(DEFINES) -MMD -c -o $@ $<
$(OBJDIR)/%.o: %.S $(HEADERS)
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo AS $<),)
$(Q)$(CC) $(CFLAGS) $(ASFLAGS) $(DEFINES) -c -o $@ $<
clean:
rm -rf $(OBJDIR_BASE)
rm -f $(TARGET)
rm -f *.d
install: $(TARGET)
mkdir -p $(DESTDIR)$(BIN_DIR) 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(GLOBAL_CONFIG_DIR) 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(DATA_DIR)/applications 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(DATA_DIR)/metainfo 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(DOC_DIR) 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(MAN_DIR)/man6 2>/dev/null || /bin/true
mkdir -p $(DESTDIR)$(DATA_DIR)/pixmaps 2>/dev/null || /bin/true
cp $(TARGET) $(DESTDIR)$(BIN_DIR)
cp tools/cg2glsl.py $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
cp retroarch.cfg $(DESTDIR)$(GLOBAL_CONFIG_DIR)
cp com.libretro.RetroArch.appdata.xml $(DESTDIR)$(DATA_DIR)/metainfo
cp retroarch.desktop $(DESTDIR)$(DATA_DIR)/applications
cp docs/retroarch.6 $(DESTDIR)$(MAN_DIR)/man6
cp docs/retroarch-cg2glsl.6 $(DESTDIR)$(MAN_DIR)/man6
cp media/retroarch.svg $(DESTDIR)$(DATA_DIR)/pixmaps
cp COPYING $(DESTDIR)$(DOC_DIR)
cp README.md $(DESTDIR)$(DOC_DIR)
chmod 755 $(DESTDIR)$(BIN_DIR)/$(TARGET)
chmod 755 $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
chmod 644 $(DESTDIR)$(GLOBAL_CONFIG_DIR)/retroarch.cfg
chmod 644 $(DESTDIR)$(DATA_DIR)/applications/retroarch.desktop
chmod 644 $(DESTDIR)$(DATA_DIR)/metainfo/com.libretro.RetroArch.appdata.xml
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch.6
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch-cg2glsl.6
chmod 644 $(DESTDIR)$(DATA_DIR)/pixmaps/retroarch.svg
@if test -d media/assets && test $(HAVE_ASSETS); then \
echo "Installing media assets..."; \
mkdir -p $(DESTDIR)$(ASSETS_DIR)/assets; \
if test $(HAVE_MATERIALUI) = 1; then \
cp -r media/assets/glui/ $(DESTDIR)$(ASSETS_DIR)/assets; \
fi; \
if test $(HAVE_XMB) = 1; then \
cp -r media/assets/xmb/ $(DESTDIR)$(ASSETS_DIR)/assets; \
fi; \
if test $(HAVE_OZONE) = 1; then \
cp -r media/assets/ozone/ $(DESTDIR)$(ASSETS_DIR)/assets; \
fi; \
cp media/assets/COPYING $(DESTDIR)$(DOC_DIR)/COPYING.assets; \
echo "Asset copying done."; \
fi
.PHONY: all clean
print-%:
@echo '$*=$($*)'
+9 -3
View File
@@ -32,6 +32,7 @@ HAVE_RTGA = 1
HAVE_RPNG = 1
HAVE_RJPEG = 1
HAVE_RBMP = 1
HAVE_RWAV = 1
HAVE_7ZIP = 1
HAVE_ZLIB = 1
HAVE_BUILTINZLIB = 1
@@ -40,18 +41,21 @@ HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_FILTERS_BUILTIN = 1
HAVE_MENU = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_RUNAHEAD = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_STB_FONT = 1
HAVE_CHEEVOS = 1
HAVE_CHD = 0 # disabled due to static libretro-common and libchdr conflicts between different cores
HAVE_STB_VORBIS = 1
HAVE_IBXM = 1
HAVE_CORE_INFO_CACHE = 1
# RetroArch libnx useful flags
HAVE_THREADS = 1
@@ -71,14 +75,12 @@ ifeq ($(HAVE_OPENGL), 1)
HAVE_XMB = 1
HAVE_OZONE = 1
HAVE_OVERLAY = 1
HAVE_VIDEO_LAYOUT = 1
HAVE_GLSL = 1
else
HAVE_RGUI = 1
HAVE_MATERIALUI = 0
HAVE_XMB = 0
HAVE_OZONE = 0
HAVE_STRIPES = 0
endif
include Makefile.common
@@ -127,7 +129,11 @@ ARCH := -march=armv8-a -mtune=cortex-a57 -mtp=soft -fPIE -mcpu=cortex-a57+crc+fp
CFLAGS := -g -Wall -O3 -fcommon -ffast-math -ffunction-sections \
$(ARCH) $(DEFINES) $(INCLUDE_DIRS) -I$(LIBNX)/include -I$(PORTLIBS)/include/ -include $(LIBNX)/include/switch.h #$(shell $(PORTLIBS)/bin/freetype-config --cflags)
CFLAGS += $(INCLUDE) -DSWITCH=1 -DHAVE_LIBNX=1 -DNXLINK=1 -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DHAVE_STB_FONT #-DHAVE_FREETYPE
CFLAGS += $(INCLUDE) -DSWITCH=1 -DHAVE_LIBNX=1 -DNXLINK=1 -DHAVE_SHADERPIPELINE -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES -DHAVE_UPDATE_CORE_INFO -DHAVE_STB_FONT #-DHAVE_FREETYPE
ifeq ($(HAVE_FILTERS_BUILTIN), 1)
CFLAGS += -DHAVE_FILTERS_BUILTIN
endif
ifeq ($(strip $(HAVE_STATIC_DUMMY)),1)
CFLAGS += -DHAVE_STATIC_DUMMY=1
+209
View File
@@ -0,0 +1,209 @@
#########################
## Toolchain variables ##
#########################
# Default toolchain directory
TOOLCHAIN_DIR=/opt/miyoo
# All toolchain-related variables may be
# overridden via the command line
ifdef GCW0_CC
CC = $(GCW0_CC)
else
CC = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-gcc
endif
ifdef GCW0_CXX
CXX = $(GCW0_CXX)
else
CXX = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-g++
endif
ifdef GCW0_STRIP
STRIP = $(GCW0_STRIP)
else
STRIP = $(TOOLCHAIN_DIR)/usr/bin/arm-linux-strip
endif
GCW0_SDL_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/bin/sdl-config
GCW0_FREETYPE_CONFIG ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/bin/freetype-config
GCW0_INC_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/include
GCW0_LIB_DIR ?= $(TOOLCHAIN_DIR)/usr/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/lib
#########################
#########################
PACKAGE_NAME = retroarch
DEBUG ?= 0
MIYOO = 1
DINGUX = 1
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_7ZIP = 1
HAVE_AL = 0
HAVE_ALSA = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_FILTERS_BUILTIN = 1
HAVE_BUILTINMBEDTLS = 0
HAVE_BUILTINZLIB = 1
HAVE_C99 = 1
HAVE_CC = 1
HAVE_CC_RESAMPLER = 1
HAVE_CHD = 1
HAVE_COMMAND = 0
HAVE_CXX = 1
HAVE_DR_MP3 = 1
HAVE_DYNAMIC = 1
HAVE_EGL = 0
HAVE_FREETYPE = 0
HAVE_GDI = 1
HAVE_GETADDRINFO = 0
HAVE_GETOPT_LONG = 1
HAVE_GLSL = 0
HAVE_HID = 0
HAVE_IBXM = 1
HAVE_IMAGEVIEWER = 0
HAVE_LANGEXTRA = 0
HAVE_LIBRETRODB = 1
HAVE_MENU = 1
HAVE_MENU_COMMON = 1
HAVE_GFX_WIDGETS = 0
HAVE_MMAP = 1
HAVE_OPENDINGUX_FBDEV = 0
HAVE_OPENGL = 0
HAVE_OPENGL1 = 0
HAVE_OPENGLES = 0
HAVE_OPENGLES3 = 0
HAVE_OPENGL_CORE = 0
HAVE_OPENSSL = 0
HAVE_OVERLAY = 0
HAVE_RBMP = 1
HAVE_RJPEG = 1
HAVE_RPILED = 0
HAVE_RPNG = 1
HAVE_RUNAHEAD = 0
HAVE_SDL_DINGUX = 1
HAVE_SHADERPIPELINE = 0
HAVE_STB_FONT = 0
HAVE_STB_IMAGE = 0
HAVE_STB_VORBIS = 0
HAVE_STDIN_CMD = 0
HAVE_STRCASESTR = 1
HAVE_THREADS = 1
HAVE_UDEV = 0
HAVE_RGUI = 1
HAVE_MATERIALUI = 0
HAVE_XMB = 0
HAVE_OZONE = 0
HAVE_ZLIB = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_XDELTA = 0 # Disabled until we figure out how to include <lzma.h>
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 0
HAVE_CORE_INFO_CACHE = 1
#HAVE_TINYALSA = 1
HAVE_NEAREST_RESAMPLER = 1
OS = Linux
TARGET = retroarch
OBJ :=
LINK := $(CXX)
DEF_FLAGS := -march=armv5te -mtune=arm926ej-s -ffast-math -fomit-frame-pointer
DEF_FLAGS += -ffunction-sections -fdata-sections
DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOO=1 -DDINGUX -MMD
DEF_FLAGS += -Wall -Wno-unused-variable -flto
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE
LIBS := -ldl -lz -lrt -pthread -lasound
CFLAGS :=
CXXFLAGS := -fno-exceptions -fno-rtti -std=c++11 -D__STDC_CONSTANT_MACROS
ASFLAGS :=
LDFLAGS := -Wl,--gc-sections
INCLUDE_DIRS = -I$(GCW0_INC_DIR)
LIBRARY_DIRS = -L$(GCW0_LIB_DIR)
DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
DEFINES += -DHAVE_C99=1 -DHAVE_CXX=1
DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1
DEFINES += -DHAVE_FILTERS_BUILTIN -DHAVE_ALSA
SDL_DINGUX_CFLAGS := $(shell $(GCW0_SDL_CONFIG) --cflags)
SDL_DINGUX_LIBS := $(shell $(GCW0_SDL_CONFIG) --libs)
FREETYPE_CFLAGS := $(shell $(GCW0_FREETYPE_CONFIG) --cflags)
FREETYPE_LIBS := $(shell $(GCW0_FREETYPE_CONFIG) --libs)
MMAP_LIBS = -lc
OBJDIR_BASE := obj-unix
ifeq ($(DEBUG), 1)
OBJDIR := $(OBJDIR_BASE)/debug
DEF_FLAGS += -O0 -g -DDEBUG -D_DEBUG
else
OBJDIR := $(OBJDIR_BASE)/release
DEF_FLAGS += -O2 -DNDEBUG
endif
include Makefile.common
DEF_FLAGS += $(INCLUDE_DIRS)
LDFLAGS += $(CFLAGS) $(CXXFLAGS) $(DEF_FLAGS)
CFLAGS += $(DEF_FLAGS)
CXXFLAGS += $(DEF_FLAGS)
HEADERS = $(wildcard */*/*.h) $(wildcard */*.h) $(wildcard *.h)
Q := @
RARCH_OBJ := $(addprefix $(OBJDIR)/,$(OBJ))
all: $(TARGET)
-include $(RARCH_OBJ:.o=.d)
SYMBOL_MAP := -Wl,-Map=output.map
$(TARGET): $(RARCH_OBJ)
@$(if $(Q), $(shell echo echo LD $@),)
$(Q)$(LINK) -o $@ $(RARCH_OBJ) $(LIBS) $(LDFLAGS) $(LIBRARY_DIRS)
ifeq ($(STRIP_BIN),1)
$(STRIP) --strip-unneeded $(TARGET)
endif
$(OBJDIR)/%.o: %.c
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo CC $<),)
$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c -o $@ $<
$(OBJDIR)/%.o: %.cpp
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo CXX $<),)
$(Q)$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(DEFINES) -MMD -c -o $@ $<
$(OBJDIR)/%.o: %.m
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo OBJC $<),)
$(Q)$(CXX) $(OBJCFLAGS) $(DEFINES) -MMD -c -o $@ $<
$(OBJDIR)/%.o: %.S $(HEADERS)
@mkdir -p $(dir $@)
@$(if $(Q), $(shell echo echo AS $<),)
$(Q)$(CC) $(CFLAGS) $(ASFLAGS) $(DEFINES) -c -o $@ $<
clean:
rm -rf $(OBJDIR_BASE)
rm -f $(TARGET)
rm -f *.d
.PHONY: all clean
print-%:
@echo '$*=$($*)'
+4 -3
View File
@@ -25,11 +25,11 @@ HAVE_D3D12 := 1
HAVE_CG := 1
HAVE_OPENGL := 1
HAVE_OPENGL1 := 1
HAVE_GFX_WIDGETS := 1
HAVE_GFX_WIDGETS := 1
HAVE_VULKAN := 1
HAVE_XAUDIO := 1
HAVE_XINPUT := 1
HAVE_WASAPI := 0
HAVE_WASAPI := 1
HAVE_THREAD_STORAGE := 1
HAVE_WINMM := 1
@@ -58,15 +58,16 @@ HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_7ZIP := 1
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETWORK_CMD := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_LANGEXTRA := 1
HAVE_CHEEVOS := 1
HAVE_SHADERPIPELINE := 1
HAVE_IMAGEVIEWER := 1
HAVE_BSV_MOVIE := 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
ifeq ($(HAVE_D3D8), 1)
D3D8_LIBS := -ld3d8
+32 -127
View File
@@ -10,6 +10,7 @@ PC_DEVELOPMENT_IP_ADDRESS = 255.255.255.255
PC_DEVELOPMENT_UDP_PORT = 3490
RARCH_CONSOLE = 0
USBGECKO = 0
HAVE_STATIC_DUMMY ?= 0
SPACE :=
SPACE := $(SPACE) $(SPACE)
@@ -44,7 +45,15 @@ ifeq ($(WHOLE_ARCHIVE_LINK), 1)
WHOLE_END := -Wl,--no-whole-archive
endif
LIBS := $(WHOLE_START) -lretro_ngc $(WHOLE_END)
LIB_CORE :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIB_CORE += -lretro_ngc
endif
LIBS := $(WHOLE_START) $(LIB_CORE) $(WHOLE_END)
libogc_platform := 1
@@ -63,16 +72,18 @@ ifeq ("$(wildcard $(ELF2DOL))","")
ELF2DOL = $(DEVKITPRO)/tools/bin/elf2dol$(EXE_EXT)
endif
INCLUDE += -I. -I$(DEVKITPRO)/libogc/include -Iwii/libogc/include
INCLUDE += -I.
ifeq ($(EXTERNAL_LIBOGC), 1)
CFLAGS += -DEXTERNAL_LIBOGC
CXXFLAGS += -DEXTERNAL_LIBOGC
LIBDIRS += -L$(DEVKITPRO)/libogc/lib/cube
INCLUDE += -I$(DEVKITPRO)/libogc/include
else
CFLAGS += -DINTERNAL_LIBOGC
CXXFLAGS += -DINTERNAL_LIBOGC
LIBDIRS += -Lwii/libogc/libs/cube
INCLUDE += -Iwii/libogc/include
endif
ifeq ($(GX_PTHREAD_LEGACY), 1)
@@ -114,11 +125,11 @@ HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_IBXM := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_XDELTA := 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_CHEATS := 1
HAVE_SCREENSHOTS := 1
HAVE_REWIND := 1
@@ -126,18 +137,32 @@ HAVE_AUDIOMIXER := 1
HAVE_RWAV := 1
RARCH_CONSOLE = 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
HAVE_MENU_COMMON := 1
HAVE_MENU := 1
HAVE_BUILTINZLIB := 1
HAVE_STATIC_AUDIO_FILTERS := 1
HAVE_STATIC_VIDEO_FILTERS := 1
HAVE_XMB := 0
HAVE_OZONE := 0
HAVE_RGUI := 1
HAVE_MATERIALUI := 0
CFLAGS += -Wall -std=gnu99 $(MACHDEP) $(PLATCFLAGS) $(INCLUDE)
INCLUDE += -I./libretro-common/include \
-Ideps \
-Ideps/stb
CFLAGS += -Wall -std=gnu99 $(MACHDEP) $(PLATCFLAGS) $(INCLUDE)
OBJ = griffin/griffin.o $(PLATOBJS)
OBJ = $(PLATOBJS) audio/drivers/gx_audio.o gfx/drivers/gx_gfx.o input/drivers/gx_input.o frontend/drivers/platform_gx.o input/drivers_joypad/gx_joypad.o
ifeq ($(HAVE_GRIFFIN_CPP), 1)
OBJ += griffin/griffin_cpp.o
ifeq ($(EXTERNAL_LIBOGC), 0)
OBJ += wii/libogc/libfat/libfat.o wii/libogc/libfat/fatfile.o wii/libogc/libfat/file_allocation_table.o wii/libogc/libfat/cache.o wii/libogc/libfat/fatdir.o wii/libogc/libfat/partition.o wii/libogc/libfat/directory.o wii/libogc/libfat/filetime.o wii/libogc/libfat/disc.o
endif
include Makefile.common
CFLAGS += $(DEFINES)
ifeq ($(WANT_GLSLANG), 1)
OBJ += griffin/griffin_glslang.o
endif
@@ -155,18 +180,10 @@ ifeq ($(HAVE_WIIUSB_HID), 1)
CFLAGS += -DHAVE_WIIUSB_HID -DHAVE_HID
endif
ifeq ($(HAVE_LIBRETRODB), 1)
CFLAGS += -DHAVE_LIBRETRODB
endif
ifeq ($(BIG_STACK),1)
CFLAGS += -DBIG_STACK
endif
ifeq ($(HAVE_RJPEG), 1)
CFLAGS += -DHAVE_RJPEG
endif
ifeq ($(HAVE_FILE_LOGGER), 1)
CFLAGS += -DHAVE_FILE_LOGGER
endif
@@ -180,66 +197,6 @@ ifeq ($(HAVE_ZLIB), 1)
CFLAGS += -I./libretro-common/include/compat/zlib
endif
ifeq ($(HAVE_RPNG), 1)
CFLAGS += -DHAVE_RPNG
endif
ifeq ($(HAVE_RBMP), 1)
CFLAGS += -DHAVE_RBMP
endif
ifeq ($(HAVE_RTGA), 1)
CFLAGS += -DHAVE_RTGA
endif
ifeq ($(HAVE_IMAGEVIEWER), 1)
CFLAGS += -DHAVE_IMAGEVIEWER
endif
ifeq ($(HAVE_BSV_MOVIE), 1)
CFLAGS += -DHAVE_BSV_MOVIE
endif
ifeq ($(HAVE_RUNAHEAD), 1)
CFLAGS += -DHAVE_RUNAHEAD
endif
ifeq ($(HAVE_7ZIP), 1)
CFLAGS += -DHAVE_7ZIP -D_7ZIP_ST
endif
ifeq ($(HAVE_SCREENSHOTS), 1)
CFLAGS += -DHAVE_SCREENSHOTS
endif
ifeq ($(HAVE_REWIND), 1)
CFLAGS += -DHAVE_REWIND
endif
ifeq ($(HAVE_AUDIOMIXER), 1)
CFLAGS += -DHAVE_AUDIOMIXER
endif
ifeq ($(HAVE_RWAV), 1)
CFLAGS += -DHAVE_RWAV
endif
ifeq ($(HAVE_OVERLAY), 1)
CFLAGS += -DHAVE_OVERLAY
endif
ifeq ($(HAVE_VIDEO_LAYOUT), 1)
CFLAGS += -DHAVE_VIDEO_LAYOUT
endif
ifeq ($(HAVE_NETWORKING), 1)
CFLAGS += -DHAVE_NETWORKING
endif
ifeq ($(HAVE_NETPLAYDISCOVERY), 1)
CFLAGS += -DHAVE_NETPLAYDISCOVERY
endif
ifeq ($(RARCH_CONSOLE), 1)
CFLAGS += -DRARCH_CONSOLE
endif
@@ -250,50 +207,10 @@ endif
CFLAGS += -std=gnu99 -DHAVE_RGUI -DHAVE_MENU -DHAVE_GRIFFIN=1 -Wno-char-subscripts -DRARCH_INTERNAL
ifeq ($(HAVE_MATERIALUI), 1)
CFLAGS += -DHAVE_MATERIALUI
endif
ifeq ($(HAVE_XMB), 1)
CFLAGS += -DHAVE_XMB
endif
ifeq ($(HAVE_STB_FONT), 1)
CFLAGS += -DHAVE_STB_FONT
endif
ifeq ($(HAVE_LANGEXTRA), 1)
CFLAGS += -DHAVE_LANGEXTRA
endif
ifeq ($(HAVE_DSP_FILTER), 1)
CFLAGS += -DHAVE_DSP_FILTER
endif
ifeq ($(HAVE_VIDEO_FILTER), 1)
CFLAGS += -DHAVE_VIDEO_FILTER
endif
ifeq ($(HAVE_FILTERS_BUILTIN), 1)
CFLAGS += -DHAVE_FILTERS_BUILTIN
endif
ifeq ($(HAVE_THREADS), 1)
CFLAGS += -DHAVE_THREADS
endif
ifeq ($(HAVE_CONFIGFILE), 1)
CFLAGS += -DHAVE_CONFIGFILE
endif
ifeq ($(HAVE_PATCH), 1)
CFLAGS += -DHAVE_PATCH
endif
ifeq ($(HAVE_CHEATS), 1)
CFLAGS += -DHAVE_CHEATS
endif
ifeq ($(HAVE_RSOUND), 1)
CFLAGS += -DHAVE_RSOUND
endif
@@ -302,22 +219,10 @@ ifeq ($(HAVE_GETOPT_LONG), 1)
CFLAGS += -DHAVE_GETOPT_LONG=1
endif
ifeq ($(HAVE_DYLIB), 1)
CFLAGS += -DHAVE_DYLIB
endif
ifeq ($(HAVE_NETWORK_CMD), 1)
CFLAGS += -DHAVE_NETWORK_CMD
endif
ifeq ($(HAVE_COMMAND), 1)
CFLAGS += -DHAVE_COMMAND
endif
ifeq ($(HAVE_STDIN_CMD), 1)
CFLAGS += -DHAVE_STDIN_CMD
endif
ifeq ($(HAVE_DYNAMIC), 1)
CFLAGS += -DHAVE_DYNAMIC
endif
+34 -14
View File
@@ -1,25 +1,45 @@
include version.all
DEBUG = 0
DEBUG = 0
CC = $(PNDSDK)/bin/arm-none-linux-gnueabi-gcc
LD = $(PNDSDK)/bin/arm-none-linux-gnueabi-gcc -o
CC = $(PNDSDK)/bin/arm-none-linux-gnueabi-gcc
LD = $(PNDSDK)/bin/arm-none-linux-gnueabi-gcc -o
TARGET := retroarch-pandora
TARGET := retroarch-pandora
LDDIRS = -L. -L$(PNDSDK)/usr/lib
INCDIRS = -I. -I$(PNDSDK)/usr/include
LDDIRS = -L. -L$(PNDSDK)/usr/lib
INCDIRS = -I. -I$(PNDSDK)/usr/include
OBJ = griffin/griffin.o audio/resamplers/sinc_resampler_neon.o libretro-common/conversion/s16_to_float_neon.o libretro-common/conversion/float_to_s16_neon.o
LDFLAGS = -L$(PNDSDK)/usr/lib -Wl,-rpath,$(PNDSDK)/usr/lib
OBJ = griffin/griffin.o audio/resamplers/sinc_resampler_neon.o libretro-common/conversion/s16_to_float_neon.o libretro-common/conversion/float_to_s16_neon.o
LDFLAGS = -L$(PNDSDK)/usr/lib -Wl,-rpath,$(PNDSDK)/usr/lib
LIBS = -lGLESv2 -lEGL -ldl -lm -lpthread -lrt -lasound
DEFINES = -std=gnu99 -DHAVE_THREADS -DHAVE_GETOPT_LONG=1 -DHAVE_GRIFFIN -DRARCH_INTERNAL
DEFINES += -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SCREENSHOTS -DHAVE_REWIND -D__ARM_ARCH_6__ -DHAVE_OPENGL -DHAVE_OPENGLES -DHAVE_OPENGLES2 -DHAVE_GLSL -DHAVE_DYNAMIC -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_OVERLAY -DHAVE_VIDEO_LAYOUT -DHAVE_ALSA -DHAVE_ZLIB -D__linux__
DEFINES += -DHAVE_DSP_FILTER
DEFINES += -DHAVE_VIDEO_FILTER
LIBS = -lGLESv2 -lEGL -ldl -lm -lpthread -lrt -lasound
DEFINES = -std=gnu99
DEFINES += -DHAVE_THREADS \
-DHAVE_GETOPT_LONG=1 \
-DHAVE_GRIFFIN \
-DRARCH_INTERNAL \
-DHAVE_CONFIGFILE \
-DHAVE_PATCH \
-DHAVE_SCREENSHOTS \
-DHAVE_REWIND \
-D__ARM_ARCH_6__ \
-DHAVE_OPENGL \
-DHAVE_OPENGLES \
-DHAVE_OPENGLES2 \
-DHAVE_GLSL \
-DHAVE_DYNAMIC \
-DHAVE_RPNG \
-DHAVE_RJPEG \
-DHAVE_OVERLAY \
-DHAVE_ALSA \
-DHAVE_ZLIB \
-D__linux__ \
-DHAVE_DSP_FILTER \
-DHAVE_VIDEO_FILTER \
-D__OPENPANDORA__ \
-DPANDORA
DEFINES += $(INCDIRS)
DEFINES += -D__OPENPANDORA__ -DPANDORA
DEFINES += -marm -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize
ifeq ($(DEBUG), 1)
+141 -100
View File
@@ -3,62 +3,95 @@ DEBUG ?= 0
GRIFFIN_BUILD = 0
WHOLE_ARCHIVE_LINK = 0
HAVE_STATIC_DUMMY ?= 0
HAVE_GLES3 ?= 0
HAVE_MOUSE ?= 0
HAVE_KEYBOARD ?= 0
PS4_TITLE_ID := RETROARCH
PS4_TITLE_NAME := RetroArch
PC_DEVELOPMENT_IP_ADDRESS =
PC_DEVELOPMENT_UDP_PORT =
PC_DEVELOPMENT_IP_ADDRESS = 192.168.1.137
PC_DEVELOPMENT_UDP_PORT = 18194
OBJ :=
AUTH_INFO = 000000000000000000000000001C004000FF000000000080000000000000000000000000000000000000008000400040000000000000008000000000000000080040FFFF000000F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
DEFINES :=
OBJ += deps/xxHash/xxhash.o \
# input/drivers/ps4_input.o \
# input/drivers_joypad/ps4_joypad.o \
# audio/drivers/psp_audio.o \
# gfx/drivers_context/orbis_ctx.o \
# frontend/drivers/platform_orbis.o
ifeq ($(HAVE_GLES3),1)
DEFINES += -DHAVE_OPENGLES3
endif
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
endif
ifeq ($(GRIFFIN_BUILD), 1)
OBJ += griffin/griffin.o
DEFINES += -DHAVE_GRIFFIN=1
DEFINES += -DHAVE_MENU -DHAVE_LIBRETRODB -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_SCREENSHOTS -DHAVE_CHEATS
DEFINES += -DHAVE_REWIND
DEFINES += -DHAVE_MENU -DHAVE_LIBRETRODB -DHAVE_CONFIGFILE
DEFINES += -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_RBMP -DHAVE_RTGA -DHAVE_CC_RESAMPLER
DEFINES += -DHAVE_CORE_INFO_CACHE
ifeq ($(DEBUG), 1)
DEFINES += -DHAVE_NETLOGGER
endif
else
HAVE_DSP_FILTER := 1
HAVE_VIDEO_FILTER := 1
HAVE_FILTERS_BUILTIN := 1
HAVE_LANGEXTRA := 0
HAVE_RPNG := 1
HAVE_RJPEG := 1
HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_ZLIB := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_7ZIP := 1
HAVE_EGL := 1
HAVE_GFX_WIDGETS := 1
HAVE_GLSL := 1
HAVE_OPENGLES := 1
HAVE_NETWORKING := 0
HAVE_SOCKET_LEGACY := 0
HAVE_MENU := 1
HAVE_MENU_COMMON := 1
HAVE_CONFIGFILE := 1
HAVE_SCREENSHOTS := 1
HAVE_REWIND := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_RGUI := 0
HAVE_MATERIALUI := 0
HAVE_XMB := 1
HAVE_THREADS := 1
HAVE_LIBRETRODB := 1
HAVE_CC_RESAMPLER := 1
HAVE_CHEEVOS := 1
RARCH_CONSOLE := 1
HAVE_LANGEXTRA := 1
HAVE_IMAGEVIEWER := 1
HAVE_RPNG := 1
HAVE_RJPEG := 1
HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_ZLIB := 1
HAVE_BUILTINZLIB := 1
HAVE_OVERLAY := 1
HAVE_7ZIP := 1
HAVE_EGL := 1
HAVE_GFX_WIDGETS := 1
HAVE_GLSL := 1
HAVE_SHADERPIPELINE := 1
HAVE_OPENGL := 1
HAVE_OPENGLES := 1
HAVE_OPENGLES2 := 1
HAVE_NETWORKING := 0
HAVE_IFINFO := 0
HAVE_SOCKET_LEGACY := 1
HAVE_MENU := 1
HAVE_MENU_COMMON := 1
HAVE_RGUI := 1
HAVE_STB_FONT := 1
HAVE_STB_VORBIS := 1
HAVE_DR_FLAC := 1
HAVE_DR_MP3 := 1
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_OZONE := 1
HAVE_RGUI := 1
HAVE_THREADS := 1
HAVE_THREAD_ATTR := 1
HAVE_LIBRETRODB := 1
HAVE_CC_RESAMPLER := 1
HAVE_CHEEVOS := 0
HAVE_RUNAHEAD := 1
RARCH_CONSOLE := 1
HAVE_MAIN := 1
HAVE_ONLINE_UPDATER := 1
HAVE_COMPRESSION := 1
HAVE_UPDATE_ASSETS := 1
HAVE_UPDATE_CORES := 1
HAVE_UPDATE_CORE_INFO := 1
HAVE_CONFIGFILE := 1
HAVE_CHD := 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_CORE_INFO_CACHE := 1
ifeq ($(DEBUG), 1)
HAVE_NETLOGGER = 1
@@ -66,107 +99,115 @@ else
include Makefile.common
CFLAGS += $(DEF_FLAGS)
BLACKLIST :=
OBJ := $(filter-out $(BLACKLIST),$(OBJ))
endif
ifeq ($(strip $(PS4SDK)),)
$(error "Please set PS4SDK in your environment. export PS4SDK=<path to>ps4sdk")
ifeq ($(strip $(ORBISDEV)),)
$(error "Please set ORBISDEV in your environment. export ORBISDEV=<path to>orbisdev")
endif
export PATH := $(PATH):$(PS4SDK)/bin
PREFIX :=
CC := $(PREFIX)clang
CXX := $(PREFIX)clang
AS := $(PREFIX)clang
PREFIX := orbis-
CC := clang
CXX := clang++
AS := $(PREFIX)as
AR := $(PREFIX)ar
OBJCOPY := $(PREFIX)objcopy
STRIP := $(PREFIX)strip
NM := $(PREFIX)nm
LD := $(CXX)
LD := clang
INCDIRS := -I. -Ideps/7zip -Ilibretro-common/include -Ideps/stb -Ilibretro-common/include/compat/zlib
LIBDIRS := -L.
LIBDIRS += -L. -Lcores -Lbuild -L$(ORBISDEV)/usr/lib
INCDIRS += -I. -Idefines -Ideps -Ideps/7zip -Ideps/libz -Ilibretro-common/include -Ideps/stb \
-Ilibretro-common/include/compat/zlib -Ideps/rcheevos/include -I$(ORBISDEV)/usr/include -I$(ORBISDEV)/usr/include/c++/v1 -I$(ORBISDEV)/usr/include/orbis
ARCHFLAGS := -m64 -DORBIS
CFLAGS += $(ARCHFLAGS) -std=c11 -mcmodel=large -ffreestanding -nostdlib -nostdinc -fno-builtin -fno-stack-protector
ARCHFLAGS += --target=x86_64-scei-ps4 -DORBIS -D__ORBIS__ -D__PS4__ -D_BSD_SOURCE
DEFINES += -DRARCH_INTERNAL -DRARCH_CONSOLE -DHAVE_FILTERS_BUILTIN \
-DHAVE_XMB -DHAVE_RGUI -DHAVE_OZONE \
-DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_CORES -DHAVE_UPDATE_CORE_INFO -DHAVE_UPDATE_ASSETS \
ifeq ($(DEBUG), 1)
CFLAGS += -O2 -g
else
CFLAGS += -O3
# Compiling with -Werror and disabling some warnings
DEFINES += -Werror -Wno-macro-redefined -Wno-typedef-redefinition -Wno-non-literal-null-conversion -Wno-void-pointer-to-int-cast \
-Wno-format -Wno-tautological-constant-out-of-range-compare -Wno-implicit-function-declaration
ifeq ($(HAVE_KEYBOARD), 1)
DEFINES += -DHAVE_KEYBOARD
PS4_LIBS += -lSceDbgKeyboard_stub
endif
ASFLAGS := $(ARCHFLAGS) -I$(PS4SDK)/include -target x86_64-scei-ps4-elf -fPIE
LDFLAGS := -O3 -Wall -m64 -nostartfiles -nostdlib -L$(PS4SDK)/lib -pie
ARFLAGS := rcs
CRTFILE ?= $(PS4SDK)/crt0.s
CFLAGS += -Wall -pedantic -Wno-zero-length-array -Wno-format-pedantic
CFLAGS += -D__PS4__ -I$(PS4SDK)/include -I $(PS4SDK)/include/sce
CFLAGS += -target x86_64-scei-ps4-elf -fPIE
CFLAGS += -DRARCH_INTERNAL -DRARCH_CONSOLE
CFLAGS += -DHAVE_FILTERS_BUILTIN $(DEFINES)
ifeq ($(HAVE_MOUSE),1)
DEFINES += -DHAVE_MOUSE
PS4_LIBS += -lSceMouse_stub
endif
ifneq ($(PC_DEVELOPMENT_IP_ADDRESS),)
CFLAGS += -DPC_DEVELOPMENT_IP_ADDRESS='"$(PC_DEVELOPMENT_IP_ADDRESS)"'
DEFINES += -DPC_DEVELOPMENT_IP_ADDRESS='"$(PC_DEVELOPMENT_IP_ADDRESS)"'
endif
ifneq ($(PC_DEVELOPMENT_UDP_PORT),)
CFLAGS += -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT)
DEFINES += -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT)
endif
ifeq ($(WHOLE_ARCHIVE_LINK), 1)
WHOLE_START := -Wl,--whole-archive
WHOLE_END := -Wl,--no-whole-archive
WHOLE_START := --whole-archive
WHOLE_END := --no-whole-archive
endif
CXXFLAGS := $(CFLAGS)
PS4_LIBS := -lps4link -ldebugnet -lorbisFile -lelfloader -lorbisKeyboard -lorbis2d -lpng -lz -lorbisGl -lorbisPad -lorbisAudio -lmod -lorbisFileBrowser -lorbisXbmFont -lSceNet_stub -lScePigletv2VSH_stub -lSceSystemService_stub -lSceUserService_stub -lScePad_stub -lSceAudioOut_stub -lSceIme_stub -lSceSysmodule_stub \
-lPs4_extension_kernel_call_standard -lPs4_extension_kernel_execute_dynlib_prepare_dlclose -lPs4_common_kernel -lPs4_common_user -lPs4_common_generic -lPs4LibCInternalAdaptive_stub -lPs4LibKernelAdaptive_stub -lSceLibcInternal_stub -lkernel_stub -lps4Kernel_stub -lPs4_base_stub_resolve_minimal -lPs4_base_kernel_dlsym_standard -lPs4_base_kernel_seek_elf_address_standard -lPs4_base_assembler_register_parameter_standard -lPs4_base_assembler_system_call_standard
PS4_LIBS += -luser_mem_sys -lkernel_stub -lSceLibcInternal_stub -lunwind -lc++ -lc++abi -lc++experimental \
-lorbisLink -lkernelUtil -ldebugnet -lorbisNfs -lSceSysmodule_stub -lSceSystemService_stub -lSceNet_stub \
-lSceUserService_stub -lScePigletv2VSH_stub -lSceVideoOut_stub -lSceGnmDriver_stub -lorbisPad \
-lScePad_stub -lSceAudioOut_stub -lSceIme_stub -lSceNetCtl_stub -lSQLite
LIBS := $(WHOLE_START) -lretro_orbis $(WHOLE_END) $(PS4_LIBS)
ifeq ($(HAVE_STATIC_DUMMY),1)
LIBS := $(PS4_LIBS)
else
LIBS := $(WHOLE_START) -lretro_orbis $(WHOLE_END) $(PS4_LIBS)
endif
TARGETS := $(TARGET).elf
DEPFLAGS = -MT $@ -MMD -MP -MF $*.Tdepend
POSTCOMPILE = mv -f $*.Tdepend $*.depend
CFLAGS := $(ARCHFLAGS) $(INCDIRS) $(DEFINES)
CXXFLAGS := $(ARCHFLAGS) $(INCDIRS) $(DEFINES)
LDFLAGS := $(LIBDIRS) -Wl,--gc-sections -Wl,-z -Wl,max-page-size=0x4000 -Wl,--dynamic-linker="/libexec/ld-elf.so.1" -Wl,-pie -Wl,--eh-frame-hdr -target x86_64-scei-ps4-elf -T $(ORBISDEV)/usr/lib/linker.x
ifeq ($(DEBUG), 1)
CFLAGS += -O0 -fno-inline
CXXFLAGS += -O0 -fno-inline
else
CFLAGS += -O3
CXXFLAGS += -O3
endif
TARGETS := $(TARGET).self
all: $(TARGETS)
%.o: %.cpp
%.o: %.cpp %.depend
$(CXX) -c -o $@ $< $(CXXFLAGS) $(INCDIRS) $(DEPFLAGS)
$(POSTCOMPILE)
OBJOUT = -o
%.o: %.c
%.o: %.c %.depend
$(CC) -c -o $@ $< $(CFLAGS) $(INCDIRS) $(DEPFLAGS)
$(POSTCOMPILE)
$(CC) $(CFLAGS) -c $(OBJOUT)$@ $<
%.o: %.cpp
$(CXX) $(CXXFLAGS) -c $(OBJOUT)$@ $<
%.o: %.S
%.o: %.S %.depend
$(CC) -c -o $@ $< $(ASFLAGS) $(INCDIRS) $(DEPFLAGS)
$(POSTCOMPILE)
$(CC) $(CFLAGS) -c $(OBJOUT)$@ $<
%.o: %.s
%.o: %.s %.depend
$(CC) -c -o $@ $< $(ASFLAGS) $(INCDIRS) $(DEPFLAGS)
$(POSTCOMPILE)
$(CC) -c $(OBJOUT)$@ $<
%.depend: ;
$(TARGET).elf: $(OBJ)
$(LD) $(ORBISDEV)/usr/lib/crt0.o $(OBJ) $(LDFLAGS) $(LIBS) -o $(TARGET).elf
$(TARGET).elf: $(OBJ) libretro_orbis.a
$(LD) $(CRTFILE) $(OBJ) $(LDFLAGS) $(LIBDIRS) $(LIBS) -o $@
$(TARGET).oelf: $(TARGET).elf
@orbis-elf-create $(TARGET).elf $(TARGET).oelf
$(TARGET).self: $(TARGET).oelf
python $(ORBISDEV)/bin/make_fself.py --auth-info $(AUTH_INFO) $(TARGET).oelf $(TARGET).self
install:
@cp $(TARGET).self $(SELF_PATH_INSTALL)/homebrew.self
@echo "Installed!"
clean:
rm -f $(OBJ) $(TARGET).elf
rm -f $(OBJ:.o=.depend)
rm -f $(OBJ) $(TARGET).elf $(TARGET).oelf $(TARGET).self
.PHONY: clean all
.PRECIOUS: %.depend
-include $(OBJ:.o=.depend)
+131
View File
@@ -0,0 +1,131 @@
TARGET := retroarch_orbis_salamander
DEBUG ?= 0
PS4_TITLE_ID := RETROARCH
PS4_TITLE_NAME := RetroArch
PC_DEVELOPMENT_IP_ADDRESS = 192.168.1.137
PC_DEVELOPMENT_UDP_PORT = 18194
AUTH_INFO = 000000000000000000000000001C004000FF000000000080000000000000000000000000000000000000008000400040000000000000008000000000000000080040FFFF000000F000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
endif
ifeq ($(strip $(ORBISDEV)),)
$(error "Please set ORBISDEV in your environment. export ORBISDEV=<path to>orbisdev")
endif
PREFIX := orbis-
CC := clang
CXX := clang++
AS := $(PREFIX)as
AR := $(PREFIX)ar
OBJCOPY := $(PREFIX)objcopy
STRIP := $(PREFIX)strip
NM := $(PREFIX)nm
LD := clang
LIBDIRS += -L. -Lcores -Lbuild -L$(ORBISDEV)/usr/lib
INCDIRS += -I. -Idefines -Ilibretro-common/include -I$(ORBISDEV)/usr/include -I$(ORBISDEV)/usr/include/c++/v1 -I$(ORBISDEV)/usr/include/orbis
ARCHFLAGS += --target=x86_64-scei-ps4 -DORBIS -D__ORBIS__ -D__PS4__ -D_BSD_SOURCE
DEFINES += -DORBIS -D__ORBIS__ -DIS_SALAMANDER -DRARCH_CONSOLE -D__PS4__ -D_BSD_SOURCE
# Compiling with -Werror and disabling some warnings
DEFINES += -Werror -Wno-macro-redefined -Wno-typedef-redefinition -Wno-non-literal-null-conversion -Wno-void-pointer-to-int-cast \
-Wno-format -Wno-tautological-constant-out-of-range-compare -Wno-implicit-function-declaration
ifeq ($(HAVE_FILE_LOGGER), 1)
DEFINES += -DHAVE_FILE_LOGGER
endif
ifneq ($(PC_DEVELOPMENT_IP_ADDRESS),)
DEFINES += -DPC_DEVELOPMENT_IP_ADDRESS='"$(PC_DEVELOPMENT_IP_ADDRESS)"'
endif
ifneq ($(PC_DEVELOPMENT_UDP_PORT),)
DEFINES += -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT)
endif
PS4_LIBS += -luser_mem_sys -lkernel_stub -lSceLibcInternal_stub -lunwind -lc++ -lc++abi -lc++experimental \
-lorbisLink -lkernelUtil -ldebugnet -lorbisNfs -lSceSysmodule_stub -lSceSystemService_stub -lSceNet_stub \
-lSceUserService_stub -lScePigletv2VSH_stub -lSceVideoOut_stub -lSceGnmDriver_stub -lorbisPad \
-lScePad_stub -lSceAudioOut_stub -lSceIme_stub -lSceNetCtl_stub -lSQLite
LIBS := $(PS4_LIBS)
CFLAGS := $(ARCHFLAGS) $(INCDIRS) $(DEFINES)
CXXFLAGS := $(ARCHFLAGS) $(INCDIRS) $(DEFINES)
LDFLAGS := $(LIBDIRS) -Wl,--gc-sections -Wl,-z -Wl,max-page-size=0x4000 -Wl,--dynamic-linker="/libexec/ld-elf.so.1" -Wl,-pie -Wl,--eh-frame-hdr -target x86_64-scei-ps4-elf -T $(ORBISDEV)/usr/lib/linker.x
ifeq ($(DEBUG), 1)
CFLAGS += -O0 -fno-inline
CXXFLAGS += -O0 -fno-inline
else
CFLAGS += -O3
CXXFLAGS += -O3
endif
OBJS = frontend/frontend_salamander.o \
frontend/frontend_driver.o \
frontend/drivers/platform_orbis.o \
libretro-common/file/file_path.o \
libretro-common/file/file_path_io.o \
libretro-common/string/stdstring.o \
libretro-common/lists/string_list.o \
libretro-common/lists/dir_list.o \
libretro-common/file/retro_dirent.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/file/config_file.o \
libretro-common/streams/file_stream.o \
libretro-common/vfs/vfs_implementation.o \
libretro-common/hash/lrc_hash.o \
libretro-common/time/rtime.o \
network/net_logger.o \
verbosity.o
TARGETS := $(TARGET).elf
all: $(TARGETS)
OBJOUT = -o
%.o: %.c
$(CC) $(CFLAGS) -c $(OBJOUT)$@ $<
%.o: %.cpp
$(CXX) $(CXXFLAGS) -c $(OBJOUT)$@ $<
%.o: %.S
$(CC) $(CFLAGS) -c $(OBJOUT)$@ $<
%.o: %.s
$(CC) -c $(OBJOUT)$@ $<
$(TARGET).elf: $(OBJ)
$(LD) $(ORBISDEV)/usr/lib/crt0.o $(OBJ) $(LDFLAGS) $(LIBS) -o $(TARGET).elf
$(TARGET).oelf: $(TARGET).elf
@orbis-elf-create $(TARGET).elf $(TARGET).oelf
$(TARGET).self: $(TARGET).oelf
python $(ORBISDEV)/bin/make_fself.py --auth-info $(AUTH_INFO) $(TARGET).oelf $(TARGET).self
install:
@cp $(TARGET).self $(SELF_PATH_INSTALL)/homebrew.self
@echo "Installed!"
clean:
rm -f $(OBJ) $(TARGET).elf $(TARGET).oelf $(TARGET).self
.PHONY: clean all
+2 -7
View File
@@ -11,20 +11,16 @@ all: $(BINDIR)/retroarch
pnd: retroarch.pnd
install: all $(BINDIR)/retroarch-joyconfig $(BINDIR)/retroarch-zip $(PNDDIR)/readme.html
install: all $(BINDIR)/retroarch-zip $(PNDDIR)/readme.html
retroarch:
./configure --prefix=$PND_BASEDIR/$PRJ --disable-ffmpeg --disable-cg --disable-python --disable-libpng --disable-pulse --disable-jack --enable-gles --enable-xml
./configure --prefix=$PND_BASEDIR/$PRJ --disable-ffmpeg --disable-cg --disable-pulse --disable-jack --enable-opengles
make -f Makefile
$(BINDIR)/retroarch: retroarch
mkdir -p $(BINDIR)
cp retroarch $(BINDIR)/retroarch
$(BINDIR)/retroarch-joyconfig: tools/retroarch-joyconfig
mkdir -p $(BINDIR)
cp tools/retroarch-joyconfig $(BINDIR)/retroarch-joyconfig
$(BINDIR)/retroarch-zip: retroarch-zip
mkdir -p $(BINDIR)
cp retroarch-zip $(BINDIR)/retroarch-zip
@@ -49,6 +45,5 @@ clean:
rm -f input/*.o
rm -f tools/*.o
rm -f $(BINDIR)/retroarch
rm -f $(BINDIR)/retroarch-joyconfig
rm -f $(PNDDIR)/readme.html
rm -f retroarch
+69 -47
View File
@@ -1,70 +1,99 @@
TARGET := retroarch_ps2
TARGET_RELEASE = retroarchps2.elf
BUILD_FOR_PCSX2 = 0
DEBUG = 0
SCREEN_DEBUG = 0
GRIFFIN_BUILD = 0
HAVE_THREADS = 0
MUTE_WARNINGS = 1
WHOLE_ARCHIVE_LINK = 0
HAVE_STATIC_DUMMY ?= 0
PS2_IP = 192.168.1.10
TARGET = retroarchps2-debug.elf
TARGET_RELEASE = retroarchps2.elf
# Compile the IRXs first
IRX_DIR = ps2/irx
ifeq ($(DEBUG), 1)
OPTIMIZE_LV := -O0 -g
RARCH_DEFINES += -DDEBUG
DEFINES += -DDEBUG
else
OPTIMIZE_LV := -O3
LDFLAGS := -s
endif
ifeq ($(MUTE_WARNINGS), 1)
DISABLE_WARNINGS := -Wno-unused -Wno-format -Wno-format-truncation
endif
INCDIR = -I$(PS2DEV)/gsKit/include -I$(PS2SDK)/ports/include
INCDIR += -Ips2/include -Ilibretro-common/include -Ideps -Ideps/stb -Ideps/7zip
CFLAGS = $(OPTIMIZE_LV) $(DISABLE_WARNINGS) -ffast-math -fsingle-precision-constant
ASFLAGS = $(CFLAGS)
RARCH_DEFINES += -DPS2 -DHAVE_GRIFFIN=1 -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_REWIND -DRARCH_CONSOLE -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS
RARCH_DEFINES += -DHAVE_ZLIB -DHAVE_NO_BUILTINZLIB -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_FILTERS_BUILTIN -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_CC_RESAMPLER -DHAVE_AUDIOMIXER
RARCH_DEFINES += -DHAVE_VIDEO_FILTER -DHAVE_RGUI
RARCH_DEFINES += -DHAVE_DSP_FILTER
LDFLAGS += -L$(PS2DEV)/gsKit/lib -L$(PS2SDK)/ports/lib -L.
# Lib cdvd is needed to get proper time
LIBS += -lretro_ps2 -lpatches -lgskit -ldmakit -laudsrv -lmtap -lpadx -lz -lcdvd -lelf-loader -lfileXio -lpoweroff
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIBS += -lretro_ps2
endif
ifeq ($(SCREEN_DEBUG), 1)
LIBS += -ldebug
RARCH_DEFINES += -DSCREEN_DEBUG
DEFINES += -DSCREEN_DEBUG
endif
ifeq ($(BUILD_FOR_PCSX2), 1)
RARCH_DEFINES += -DBUILD_FOR_PCSX2
DEFINES += -DBUILD_FOR_PCSX2
endif
ifeq ($(HAVE_THREADS), 1)
RARCH_DEFINES += -DHAVE_THREADS
DEFINES += -DRARCH_INTERNAL -DRARCH_CONSOLE
ifeq ($(GRIFFIN_BUILD), 1)
OBJ += griffin/griffin.o
DEFINES += -DHAVE_GRIFFIN=1 -DHAVE_SCREENSHOTS -DHAVE_REWIND -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS
DEFINES += -DHAVE_ZLIB -DHAVE_NO_BUILTINZLIB -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_FILTERS_BUILTIN -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_CC_RESAMPLER -DHAVE_AUDIOMIXER
DEFINES += -DHAVE_VIDEO_FILTER -DHAVE_RGUI -DHAVE_WINDOW_OFFSET
DEFINES += -DHAVE_DSP_FILTER
else
HAVE_CC_RESAMPLER = 1
HAVE_MENU_COMMON = 1
HAVE_RPNG = 1
HAVE_RJPEG = 1
HAVE_RBMP = 1
HAVE_MENU = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_PATCH = 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_CHEATS = 1
HAVE_RGUI = 1
HAVE_MATERIALUI = 0
HAVE_XMB = 0
HAVE_OZONE = 0
HAVE_ZLIB = 1
HAVE_NO_BUILTINZLIB = 1
HAVE_7ZIP = 1
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_AUDIOMIXER = 1
HAVE_RWAV = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_FILTERS_BUILTIN = 1
HAVE_WINDOW_OFFSET = 1
include Makefile.common
CFLAGS += $(DEF_FLAGS)
BLACKLIST :=
OBJ := $(filter-out $(BLACKLIST),$(OBJ))
INCDIRS += $(INCLUDE_DIRS)
endif
CFLAGS += $(RARCH_DEFINES)
ifeq ($(strip $(PS2SDK)),)
$(error "Please set PS2SDK in your environment. export PS2SDK=<path to>ps2sdk")
endif
# All the IRX objects
EE_OBJS += $(IRX_DIR)/sio2man_irx.o $ $(IRX_DIR)/iomanX_irx.o $(IRX_DIR)/fileXio_irx.o
EE_OBJS += $(IRX_DIR)/mcman_irx.o $(IRX_DIR)/mcserv_irx.o
EE_OBJS += $(IRX_DIR)/usbd_irx.o $(IRX_DIR)/bdm_irx.o $(IRX_DIR)/bdmfs_vfat_irx.o $(IRX_DIR)/usbmass_bd_irx.o
EE_OBJS += $(IRX_DIR)/libsd_irx.o $(IRX_DIR)/audsrv_irx.o
EE_OBJS += $(IRX_DIR)/cdfs_irx.o
EE_OBJS += $(IRX_DIR)/ps2dev9_irx.o $(IRX_DIR)/ps2atad_irx.o $(IRX_DIR)/ps2hdd_irx.o $(IRX_DIR)/ps2fs_irx.o $(IRX_DIR)/poweroff_irx.o
EE_OBJS += $(IRX_DIR)/mtapman_irx.o $(IRX_DIR)/padman_irx.o
INCDIR = -I$(PS2DEV)/gsKit/include -I$(PS2SDK)/ports/include
INCDIR += -Ilibretro-common/include -Ideps -Ideps/stb -Ideps/7zip
# Missing objecst on the PS2SDK
EE_OBJS += ps2/compat_files/ps2_devices.o
LDFLAGS += -L$(PS2DEV)/gsKit/lib -L$(PS2SDK)/ports/lib -L.
# Lib cdvd is needed to get proper time
LIBS += -lpatches -lgskit -ldmakit -lps2_drivers -lz -lelf-loader
EE_OBJS += griffin/griffin.o
CFLAGS = $(OPTIMIZE_LV) $(DISABLE_WARNINGS) $(DEFINES) -DPS2 -ffast-math -fsingle-precision-constant
ASFLAGS = $(CFLAGS)
EE_OBJS += $(OBJ)
EE_CFLAGS = $(CFLAGS)
EE_CXXFLAGS = $(CFLAGS)
@@ -72,18 +101,13 @@ EE_LDFLAGS = $(LDFLAGS)
EE_LIBS = $(LIBS)
EE_ASFLAGS = $(ASFLAGS)
EE_INCS = $(INCDIR)
EE_BIN = $(TARGET)
EE_BIN = $(TARGET).elf
EE_GPVAL = $(GPVAL)
all: irxdir $(EE_BIN)
irxdir:
$(MAKE) -C $(IRX_DIR)
all: $(EE_BIN)
clean:
rm -f $(EE_BIN) $(EE_OBJS)
$(MAKE) -C $(IRX_DIR) clean
prepare:
ps2client -h $(PS2_IP) reset
@@ -97,11 +121,9 @@ sim:
debug: clean all run
package:
release: all
ps2-packer $(EE_BIN) $(TARGET_RELEASE)
release: clean all package
#Include preferences
include $(PS2SDK)/samples/Makefile.pref
include $(PS2SDK)/samples/Makefile.eeglobal_cpp
+8 -24
View File
@@ -7,9 +7,6 @@ PS2_IP = 192.168.1.150
TARGET = raboot-debug.elf
TARGET_RELEASE = raboot.elf
# Compile the IRXs first
IRX_DIR = ps2/irx
ifeq ($(DEBUG), 1)
OPTIMIZE_LV := -O0 -g
RARCH_DEFINES += -DDEBUG
@@ -19,19 +16,19 @@ else
endif
ifeq ($(MUTE_WARNINGS), 1)
DISABLE_WARNINGS := -Wno-sign-compare -Wno-unused -Wno-parentheses
DISABLE_WARNINGS := -Wno-unused -Wno-format -Wno-format-truncation
endif
INCDIR = -Ilibretro-common/include
INCDIR += -Ips2/include
INCDIR += -I$(PS2SDK)/ports/include
CFLAGS = $(OPTIMIZE_LV) $(DISABLE_WARNINGS) -ffast-math -fsingle-precision-constant
ASFLAGS = $(CFLAGS)
RARCH_DEFINES += -DPS2 -DIS_SALAMANDER -DRARCH_CONSOLE
LIBDIR =
LDFLAGS =
LIBS = -lelf-loader -lpatches -lfileXio -lpoweroff
LDFLAGS += -L$(PS2SDK)/ports/lib
LIBS = -lelf-loader -lps2_drivers -lpatches
ifeq ($(SCREEN_DEBUG), 1)
LIBS += -ldebug
@@ -56,21 +53,14 @@ EE_OBJS = frontend/frontend_salamander.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/file/config_file.o \
libretro-common/streams/file_stream.o \
libretro-common/vfs/vfs_implementation.o \
libretro-common/hash/lrc_hash.o \
libretro-common/time/rtime.o \
verbosity.o \
ps2/compat_files/ps2_devices.o
# Needed IRX objects
EE_OBJS += $(IRX_DIR)/sio2man_irx.o $ $(IRX_DIR)/iomanX_irx.o $(IRX_DIR)/fileXio_irx.o
EE_OBJS += $(IRX_DIR)/mcman_irx.o $(IRX_DIR)/mcserv_irx.o
EE_OBJS += $(IRX_DIR)/usbd_irx.o $(IRX_DIR)/bdm_irx.o $(IRX_DIR)/bdmfs_vfat_irx.o $(IRX_DIR)/usbmass_bd_irx.o
EE_OBJS += $(IRX_DIR)/cdfs_irx.o
EE_OBJS += $(IRX_DIR)/ps2dev9_irx.o $(IRX_DIR)/ps2atad_irx.o $(IRX_DIR)/ps2hdd_irx.o $(IRX_DIR)/ps2fs_irx.o $(IRX_DIR)/poweroff_irx.o
verbosity.o
EE_CFLAGS = $(CFLAGS)
EE_CXXFLAGS = $(CFLAGS)
@@ -81,25 +71,19 @@ EE_INCS = $(INCDIR)
EE_BIN = $(TARGET)
EE_GPVAL = $(GPVAL)
all: irxdir $(EE_BIN)
irxdir:
$(MAKE) -C $(IRX_DIR)
all: $(EE_BIN)
clean:
rm -f $(EE_BIN) $(EE_OBJS)
$(MAKE) -C $(IRX_DIR) clean
debug: clean all run
run:
ps2client -h $(PS2_IP) execee host:$(EE_BIN)
package:
release: all
ps2-packer $(EE_BIN) $(TARGET_RELEASE)
release: clean all package
#Include preferences
include $(PS2SDK)/samples/Makefile.pref
include $(PS2SDK)/samples/Makefile.eeglobal_cpp
+50 -8
View File
@@ -23,17 +23,17 @@ APPID = SSNE10001
TITLE = Retroarch PSL1GHT
PACKAGE_BASENAME := retroarch_psl1ght
ELF_TARGET := retroarch_psl1ght.elf
ELF_TARGET := retroarch_psl1ght.elf
SELF_TARGET := $(ELF_TARGET:.elf=.self)
CORE_PATH = pkg/psl1ght/pkg/USRDIR/cores/CORE.SELF
CORE_PATH = pkg/psl1ght/pkg/USRDIR/cores/CORE.SELF
INCLUDE += -I. -Ips3/gcmgl/include/export -Ips3/include -Ideps -Ideps/stb -Ilibretro-common/include/compat/zlib -Ilibretro-common/include $(LIBPSL1GHT_INC) -Iinclude -Idefines
LIBDIRS += -L.
INCLUDE += -I. -Ideps -Ideps/stb -Ilibretro-common/include/compat/zlib -Ilibretro-common/include $(LIBPSL1GHT_INC) -Iinclude -Idefines -I$(PORTLIBS)/include -I$(PORTLIBS)/include/freetype2
LIBDIRS += -L. -L$(PORTLIBS)/lib
MACHDEP := -D__PSL1GHT__ -D__PS3__ -mcpu=cell
CFLAGS += -Wall $(MACHDEP) $(INCLUDE)
LDFLAGS := $(MACHDEP)
LIBS := -lretro_psl1ght -laudio -lrsx -lgcm_sys -lnet -lio -lsysutil -lsysmodule -lm -ljpgdec -lpngdec -llv2 -lnet -lnetctl -lsysfs
LIBS := -lretro_psl1ght -lrt -laudio -lrsx -lgcm_sys -lnet -lio -lsysutil -lsysmodule -lm -ljpgdec -lpngdec -llv2 -lnet -lnetctl -lsysfs -lfreetype -lcamera -lgem -lspurs
# system platform
system_platform = unix
@@ -53,7 +53,14 @@ else
GIT = git.exe
endif
OBJ = griffin/griffin.o
SHADER_OBJS = gfx/drivers/rsx_shaders/modern_opaque.vpo.o \
gfx/drivers/rsx_shaders/modern_opaque.fpo.o \
gfx/drivers/rsx_shaders/modern_alpha_blend.vpo.o \
gfx/drivers/rsx_shaders/modern_alpha_blend.fpo.o
LIBCO_OBJ = libretro-common/libco/ps3.o
OBJ = $(SHADER_OBJS) $(LIBCO_OBJ) libretro-common/memmap/memmap.o griffin/griffin.o
ifeq ($(HAVE_LOGGER), 1)
CFLAGS += -DHAVE_LOGGER
@@ -65,8 +72,43 @@ endif
SHARED_FLAGS :=
SHARED_FLAGS += -DHAVE_VIDEO_LAYOUT
SHARED_FLAGS += -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS -DRARCH_CONSOLE -DHAVE_OVERLAY -DHAVE_HEADSET -DHAVE_CG -DHAVE_CG_RUNTIME_COMPILER -DHAVE_SYSMODULES -DHAVE_SYSUTILS -DHAVE_RARCH_EXEC -DHAVE_MOUSE -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_GRIFFIN=1 -DHAVE_NETWORKING=1 -DHAVE_SOCKET_LEGACY=1 -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) -Wno-char-subscripts -DHAVE_CC_RESAMPLER -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_REWIND -DHAVE_MULTIMAN -DHAVE_RGUI
SHARED_FLAGS += -DHAVE_GCM
SHARED_FLAGS += -DHAVE_MENU \
-DHAVE_CONFIGFILE \
-DHAVE_PATCH \
-DHAVE_CHEATS \
-DRARCH_CONSOLE \
-DHAVE_OVERLAY \
-DHAVE_HEADSET \
-DHAVE_SYSMODULES \
-DHAVE_SYSUTILS \
-DHAVE_RARCH_EXEC \
-DHAVE_MOUSE \
-DHAVE_LIGHTGUN \
-DHAVE_ZLIB \
-DHAVE_RPNG \
-DHAVE_GRIFFIN=1 \
-DHAVE_NETWORKING=1 \
-DHAVE_SOCKET_LEGACY=1 \
-DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" \
-DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) \
-Wno-char-subscripts \
-DHAVE_CC_RESAMPLER \
-DRARCH_INTERNAL \
-DHAVE_SCREENSHOTS \
-DHAVE_REWIND \
-DHAVE_MULTIMAN \
-DHAVE_MEMINFO \
-DHAVE_RGUI \
-DHAVE_XMB \
-DHAVE_OZONE \
-DHAVE_GFX_WIDGETS \
-DHAVE_MENU_BUFFER \
-DHAVE_FREETYPE \
-DHAVE_CORE_INFO_CACHE \
-DHAVE_7ZIP \
-D_7ZIP_ST
CFLAGS += -std=gnu99 $(SHARED_FLAGS)
CXXFLAGS += $(SHARED_FLAGS)
+4 -4
View File
@@ -27,8 +27,8 @@ ELF_TARGET := retroarch_psl1ght_salamander.elf
ELF_TARGET_NONSTRIPPED := retroarch_psl1ght_salamander_nonstripped.elf
EBOOT_PATH = pkg/psl1ght/pkg/USRDIR/EBOOT.BIN
INCLUDE += -I. -Ips3/gcmgl/include/export -Ips3/include -Ideps -Ideps/stb -Ilibretro-common/include/compat/zlib \
-Ilibretro-common/include $(LIBPSL1GHT_INC) -Iinclude -Idefines
INCLUDE += -I. -Ideps -Ideps/stb -Ilibretro-common/include/compat/zlib \
-Ilibretro-common/include $(LIBPSL1GHT_INC) -Iinclude -Idefines
LIBDIRS += -L.
MACHDEP := -D__PS3__ -D__PSL1GHT__ -mcpu=cell -mhard-float -fmodulo-sched -ffunction-sections -fdata-sections
@@ -66,6 +66,7 @@ OBJ = frontend/frontend_salamander.o \
libretro-common/string/stdstring.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/streams/file_stream.o \
@@ -84,8 +85,7 @@ endif
SHARED_FLAGS :=
SHARED_FLAGS += -DHAVE_VIDEO_LAYOUT
SHARED_FLAGS += -DHAVE_MENU -DHAVE_CONFIGFILE -DRARCH_CONSOLE -DHAVE_OVERLAY -DHAVE_HEADSET -DHAVE_CG -DHAVE_CG_RUNTIME_COMPILER -DHAVE_GCMGL -DHAVE_SYSMODULES -DHAVE_SYSUTILS -DHAVE_RARCH_EXEC -DHAVE_MOUSE -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_GRIFFIN=1 -DHAVE_NETWORKING=1 -DHAVE_SOCKET_LEGACY=1 -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) -Wno-char-subscripts -DHAVE_CC_RESAMPLER -DHAVE_MULTIMAN -DHAVE_RGUI -DIS_SALAMANDER
SHARED_FLAGS += -DHAVE_MENU -DHAVE_CONFIGFILE -DRARCH_CONSOLE -DHAVE_OVERLAY -DHAVE_HEADSET -DHAVE_CG -DHAVE_CG_RUNTIME_COMPILER -DHAVE_SYSMODULES -DHAVE_SYSUTILS -DHAVE_RARCH_EXEC -DHAVE_MOUSE -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_GRIFFIN=1 -DHAVE_NETWORKING=1 -DHAVE_SOCKET_LEGACY=1 -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) -Wno-char-subscripts -DHAVE_CC_RESAMPLER -DHAVE_MULTIMAN -DHAVE_RGUI -DIS_SALAMANDER -DHAVE_GCM
CFLAGS += -std=gnu99 $(SHARED_FLAGS)
CXXFLAGS += $(SHARED_FLAGS)
+51 -20
View File
@@ -1,11 +1,12 @@
BUILD_PRX = 0
PSP_LARGE_MEMORY = 1
DEBUG = 0
HAVE_KERNEL_PRX = 1
HAVE_THREADS = 1
BIG_STACK = 0
WHOLE_ARCHIVE_LINK = 0
BUILD_PRX ?= 0
PSP_LARGE_MEMORY ?= 1
DEBUG ?= 0
HAVE_KERNEL_PRX ?= 1
HAVE_THREADS ?= 1
BIG_STACK ?= 0
LOAD_WITHOUT_CORE_INFO ?= 0
HAVE_STATIC_DUMMY ?= 0
HAVE_XDELTA ?= 1
TARGET = retroarchpsp
ifeq ($(DEBUG), 1)
@@ -14,26 +15,51 @@ else
OPTIMIZE_LV := -O3
endif
ifeq ($(WHOLE_ARCHIVE_LINK), 1)
WHOLE_START := -Wl,--whole-archive
WHOLE_END := -Wl,--no-whole-archive
endif
INCDIR = deps deps/stb deps/7zip libretro-common/include libretro-common/include/compat/zlib
CFLAGS = $(OPTIMIZE_LV) -G0 -std=gnu99 -ffast-math -fsingle-precision-constant
CFLAGS = $(OPTIMIZE_LV) -ffast-math -fsingle-precision-constant
ASFLAGS = $(CFLAGS)
RARCH_DEFINES = -DPSP -D_MIPS_ARCH_ALLEGREX -DHAVE_LANGEXTRA -DHAVE_ZLIB -DHAVE_AUDIOMIXER -DHAVE_RWAV -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_GRIFFIN=1 -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_REWIND -DRARCH_CONSOLE -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS -DHAVE_RGUI -DHAVE_FILTERS_BUILTIN -DHAVE_DSP_FILTER -DHAVE_VIDEO_FILTER -DHAVE_7ZIP -D_7ZIP_ST -DHAVE_CC_RESAMPLER
RARCH_DEFINES = -DPSP \
-D_MIPS_ARCH_ALLEGREX \
-DHAVE_ZLIB \
-DHAVE_AUDIOMIXER \
-DHAVE_RWAV \
-DHAVE_RPNG \
-DHAVE_RJPEG \
-DHAVE_GRIFFIN=1 \
-DRARCH_INTERNAL \
-DHAVE_SCREENSHOTS \
-DHAVE_REWIND \
-DRARCH_CONSOLE \
-DHAVE_MENU \
-DHAVE_CONFIGFILE \
-DHAVE_PATCH \
-DHAVE_CHEATS \
-DHAVE_RGUI \
-DHAVE_FILTERS_BUILTIN \
-DHAVE_DSP_FILTER \
-DHAVE_VIDEO_FILTER \
-DHAVE_7ZIP \
-D_7ZIP_ST \
-DHAVE_CC_RESAMPLER \
-DHAVE_CORE_INFO_CACHE
LIBDIR =
LDFLAGS =
LIBS = $(WHOLE_START) -lretro_psp1 $(WHOLE_END) -lstdc++ -lpspgu -lpspgum -lm -lpspaudio -lpspfpu -lpsppower -lpsprtc -lpthread-psp
LDFLAGS = -L$(shell psp-config --psp-prefix)
ifeq ($(HAVE_STATIC_DUMMY),1)
RARCH_DEFINES += -DHAVE_STATIC_DUMMY
else
LIBS += -lretro_psp1
endif
LIBS += -lstdc++ -lpspgu -lpspgum -lpspaudio -lpspfpu -lpsppower -lpsprtc -lpthread
ifeq ($(HAVE_THREADS), 1)
RARCH_DEFINES += -DHAVE_THREADS
endif
ifeq ($(HAVE_KERNEL_PRX), 1)
OBJS += bootstrap/psp1/kernel_functions.o
CFLAGS += -DHAVE_KERNEL_PRX
endif
@@ -41,14 +67,16 @@ ifeq ($(BIG_STACK), 1)
CFLAGS += -DBIG_STACK
endif
ifeq ($(LOAD_WITHOUT_CORE_INFO),1)
RARCH_DEFINES += -DLOAD_WITHOUT_CORE_INFO
endif
CFLAGS += $(RARCH_DEFINES)
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = RetroArch PSP1
PSP_OBJECTS = griffin/griffin.o bootstrap/psp1/kernel_functions.o
OBJS = $(PSP_OBJECTS)
OBJS += griffin/griffin.o
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak
@@ -67,3 +95,6 @@ pspsh-run:
debug: clean all pspsh-debug
run: clean all pspsh-run
sim:
/Applications/PPSSPPSDL.app/Contents/MacOS/PPSSPPSDL $(shell pwd)/EBOOT.PBP
+11 -5
View File
@@ -1,5 +1,6 @@
BUILD_PRX = 0
PSP_LARGE_MEMORY = 1
HAVE_KERNEL_PRX = 1
DEBUG = 0
TARGET = retroarchpsp_salamander
@@ -7,18 +8,18 @@ TARGET = retroarchpsp_salamander
ifeq ($(DEBUG), 1)
OPTIMIZE_LV := -O0 -g
else
OPTIMIZE_LV := -O2
OPTIMIZE_LV := -O3
endif
INCDIR = $(PSPPATH)/include libretro-common/include
CFLAGS = $(OPTIMIZE_LV) -G0 -std=gnu99 -ffast-math
CFLAGS = $(OPTIMIZE_LV) -ffast-math -fsingle-precision-constant
ASFLAGS = $(CFLAGS)
RARCH_DEFINES = -DPSP -DIS_SALAMANDER -DRARCH_CONSOLE
LIBDIR =
LDFLAGS =
LIBS = -lstdc++ -lm -lpsppower
LIBS = -lstdc++ -lpsppower
CFLAGS += $(RARCH_DEFINES)
@@ -39,14 +40,19 @@ OBJS = frontend/frontend_salamander.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/file/config_file.o \
libretro-common/streams/file_stream.o \
libretro-common/vfs/vfs_implementation.o \
libretro-common/hash/lrc_hash.o \
libretro-common/time/rtime.o \
verbosity.o \
bootstrap/psp1/kernel_functions.o
verbosity.o
ifeq ($(HAVE_KERNEL_PRX), 1)
OBJS += bootstrap/psp1/kernel_functions.o
CFLAGS += -DHAVE_KERNEL_PRX
endif
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak
+5 -5
View File
@@ -69,7 +69,7 @@ HAVE_GDI = 1
HAVE_GETADDRINFO = 0
HAVE_GETOPT_LONG = 1
HAVE_GLSL = 0
HAVE_HID = 1
HAVE_HID = 0
HAVE_IBXM = 1
HAVE_IMAGEVIEWER = 1
HAVE_LANGEXTRA = 0
@@ -107,13 +107,12 @@ HAVE_OZONE = 0
HAVE_ZLIB = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_XDELTA = 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 0
#comment out for now not working
#HAVE_OSS =1
#HAVE_OSS_LIB =1
HAVE_CORE_INFO_CACHE = 1
HAVE_OSS =1
OS = Linux
TARGET = retroarch
@@ -138,6 +137,7 @@ DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
DEFINES += -DHAVE_C99=1 -DHAVE_CXX=1
DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1
DEFINES += -DHAVE_FILTERS_BUILTIN
DEFINES += -DHAVE_OSS=1
SDL_DINGUX_CFLAGS := $(shell $(GCW0_SDL_CONFIG) --cflags)
SDL_DINGUX_LIBS := $(shell $(GCW0_SDL_CONFIG) --libs)
+2
View File
@@ -76,6 +76,7 @@ HAVE_MENU = 1
HAVE_MENU_COMMON = 1
HAVE_GFX_WIDGETS = 0
HAVE_MMAP = 1
HAVE_NETWORKING = 1
HAVE_OPENDINGUX_FBDEV = 0
HAVE_OPENGL = 0
HAVE_OPENGL1 = 0
@@ -108,6 +109,7 @@ HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 1
HAVE_CORE_INFO_CACHE = 1
OS = Linux
TARGET = retroarch
+5 -2
View File
@@ -44,7 +44,7 @@ DINGUX_BETA = 1
HAVE_SCREENSHOTS = 0
HAVE_REWIND = 1
HAVE_7ZIP = 1
HAVE_AL = 1
HAVE_AL = 0
HAVE_ALSA = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
@@ -76,6 +76,7 @@ HAVE_MENU = 1
HAVE_MENU_COMMON = 1
HAVE_GFX_WIDGETS = 0
HAVE_MMAP = 1
HAVE_NETWORKING = 1
HAVE_OPENDINGUX_FBDEV = 0
HAVE_OPENGL = 0
HAVE_OPENGL1 = 0
@@ -108,6 +109,8 @@ HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 1
HAVE_TINYALSA = 1
HAVE_CORE_INFO_CACHE = 1
OS = Linux
TARGET = retroarch
@@ -117,6 +120,7 @@ OBJ :=
LINK := $(CXX)
DEF_FLAGS := -mplt -mno-shared
DEF_FLAGS += -ffunction-sections -fdata-sections
DEF_FLAGS += -ffast-math
DEF_FLAGS += -I. -Ideps -Ideps/stb -DDINGUX=1 -DDINGUX_BETA=1 -MMD
DEF_FLAGS += -Wall -Wno-unused-variable
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE -flto
@@ -131,7 +135,6 @@ LIBRARY_DIRS = -L$(GCW0_LIB_DIR)
DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
DEFINES += -DHAVE_C99=1 -DHAVE_CXX=1
DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1
DEFINES += -DHAVE_AL=1
DEFINES += -DHAVE_FILTERS_BUILTIN
DEFINES += -DHAVE_UDEV=1
DEFINES += -DHAVE_ALSA
+2
View File
@@ -107,11 +107,13 @@ HAVE_OZONE = 0
HAVE_ZLIB = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_XDELTA = 0 # Disabled until we figure out how to include <lzma.h>
HAVE_CHEATS = 1
HAVE_CHEEVOS = 0
HAVE_LIBSHAKE = 0
HAVE_TINYALSA = 1
HAVE_NEAREST_RESAMPLER = 1
HAVE_CORE_INFO_CACHE = 1
OS = Linux
TARGET = retroarch
+4 -3
View File
@@ -15,7 +15,7 @@ ifeq ($(GRIFFIN_BUILD), 1)
DEFINES += -DHAVE_RUNAHEAD -DHAVE_DYNAMIC
DEFINES += -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS
else
HAVE_REWIND = 1
HAVE_REWIND = 1
HAVE_AUDIOMIXER = 1
HAVE_RWAV = 1
HAVE_CC_RESAMPLER = 1
@@ -26,8 +26,8 @@ else
HAVE_RBMP = 1
HAVE_RGUI = 1
HAVE_ZLIB = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_BUILTINZLIB = 1
HAVE_LIBRETRODB = 1
HAVE_MATERIALUI = 0 # enable later?
@@ -41,6 +41,7 @@ else
HAVE_PATCH = 1
HAVE_CHEATS = 1
HAVE_IBXM = 1
HAVE_CORE_INFO_CACHE = 1
include Makefile.common
CFLAGS += $(DEF_FLAGS)
+64 -34
View File
@@ -3,6 +3,7 @@ DEBUG ?= 0
HAVE_FILE_LOGGER = 1
GRIFFIN_BUILD = 0
WHOLE_ARCHIVE_LINK = 0
HAVE_STATIC_DUMMY ?= 0
VITA_TITLE_ID := RETROARCH
VITA_TITLE_NAME := RetroArch
@@ -18,22 +19,40 @@ INCDIRS :=
ifeq ($(GRIFFIN_BUILD), 1)
OBJ += griffin/griffin.o
DEFINES += -DHAVE_GRIFFIN=1
DEFINES += -DHAVE_REWIND
DEFINES += -DHAVE_NEON -DHAVE_MENU -DHAVE_CONFIGFILE -DHAVE_PATCH -DHAVE_CHEATS -DHAVE_XMB -DHAVE_MATERIALUI -DHAVE_LIBRETRODB DEFINES -DHAVE_KEYMAPPER
DEFINES += -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_RBMP -DHAVE_RTGA -DHAVE_CC_RESAMPLER
DEFINES += -DHAVE_GRIFFIN=1 \
-DHAVE_REWIND \
-DHAVE_NEON \
-DHAVE_MENU \
-DHAVE_CONFIGFILE \
-DHAVE_PATCH \
-DHAVE_CHEATS \
-DHAVE_XMB \
-DHAVE_MATERIALUI \
-DHAVE_LIBRETRODB \
-DHAVE_KEYMAPPER \
-DHAVE_ZLIB \
-DHAVE_RPNG \
-DHAVE_RJPEG \
-DHAVE_RBMP \
-DHAVE_RTGA \
-DHAVE_CC_RESAMPLER \
-DHAVE_CORE_INFO_CACHE
ifeq ($(DEBUG), 1)
DEFINES += -DHAVE_NETLOGGER
endif
INCDIRS += -I. -Ideps/7zip -Ilibretro-common/include -Ilibretro-common/include/compat/zlib -Ideps/stb
INCDIRS += -I. \
-Ideps/7zip \
-Ilibretro-common/include \
-Ilibretro-common/include/compat/zlib \
-Ideps/stb
else
HAVE_REWIND := 1
HAVE_UPDATE_ASSETS := 1
HAVE_ONLINE_UPDATER := 1
HAVE_REWIND := 1
HAVE_UPDATE_ASSETS := 1
HAVE_ONLINE_UPDATER := 1
HAVE_NEON := 1
HAVE_DSP_FILTER := 1
HAVE_VIDEO_FILTER := 1
HAVE_SCREENSHOTS := 1
HAVE_DSP_FILTER := 1
HAVE_VIDEO_FILTER := 1
HAVE_SCREENSHOTS := 1
HAVE_FILTERS_BUILTIN := 1
HAVE_LANGEXTRA := 1
HAVE_RPNG := 1
@@ -43,29 +62,31 @@ else
HAVE_ZLIB := 1
HAVE_7ZIP := 1
ifeq ($(HAVE_VITAGLES), 1)
HAVE_VITA2D := 0
HAVE_VITAGL := 0
HAVE_VITAGLES := 1
HAVE_OPENGL := 1
HAVE_OPENGLES := 1
HAVE_OPENGLES2 := 1
HAVE_EGL := 1
HAVE_GLSL := 1
HAVE_SHADERPIPELINE := 1
HAVE_VITA2D := 0
HAVE_VITAGL := 0
HAVE_VITAGLES := 1
HAVE_OPENGL := 1
HAVE_OPENGLES := 1
HAVE_OPENGLES2 := 1
HAVE_EGL := 1
HAVE_GLSL := 1
HAVE_SHADERPIPELINE := 1
else
HAVE_VITA2D := 1
HAVE_VITAGL := 0
HAVE_VITA2D := 1
HAVE_VITAGL := 0
endif
HAVE_NETWORKING := 1
HAVE_IFINFO := 1
HAVE_NETPLAYDISCOVERY := 1
HAVE_SOCKET_LEGACY := 1
HAVE_MENU := 1
HAVE_MENU_COMMON := 1
HAVE_GFX_WIDGETS := 1
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_CHEATS := 1
HAVE_GFX_WIDGETS := 1
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_XDELTA := 1 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_CHEATS := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_MATERIALUI := 1
HAVE_XMB := 1
HAVE_RGUI := 1
@@ -80,16 +101,17 @@ else
HAVE_STATIC_AUDIO_FILTERS = 1
HAVE_AUDIOMIXER := 1
HAVE_RWAV := 1
HAVE_CORE_INFO_CACHE := 1
ifeq ($(DEBUG), 1)
HAVE_NETLOGGER = 1
HAVE_NETLOGGER = 1
endif
include Makefile.common
CFLAGS += $(DEF_FLAGS)
BLACKLIST :=
OBJ := $(filter-out $(BLACKLIST),$(OBJ))
INCDIRS += $(INCLUDE_DIRS)
CFLAGS += $(DEF_FLAGS)
BLACKLIST :=
OBJ := $(filter-out $(BLACKLIST),$(OBJ))
INCDIRS += $(INCLUDE_DIRS)
endif
ifeq ($(strip $(VITASDK)),)
@@ -160,7 +182,15 @@ else
FSELF_FLAGS := -s
endif
LIBS := $(WHOLE_START) -lretro_vita $(WHOLE_END) $(VITA_LIBS) -lm -lc
LIBS := $(WHOLE_START)
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIBS += -lretro_vita
endif
LIBS += $(WHOLE_END) $(VITA_LIBS) -lm -lc
TARGETS := $(TARGET).vpk
@@ -197,7 +227,7 @@ liblibScePiglet_stub.a:
make -C deps/Pigs-In-A-Blanket/piglet_stub/libScePiglet ARCH=arm-vita-eabi
cp deps/Pigs-In-A-Blanket/piglet_stub/libScePiglet/liblibScePiglet_stub.a .
$(TARGET).elf: $(OBJ) libretro_vita.a liblibScePiglet_stub.a
$(TARGET).elf: $(OBJ) liblibScePiglet_stub.a
$(LD) $(OBJ) $(LDFLAGS) $(LIBDIRS) $(LIBS) -o $@
%.velf: %.elf
+1
View File
@@ -43,6 +43,7 @@ OBJS = frontend/frontend_salamander.o \
libretro-common/file/retro_dirent.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/file/config_file.o \
+45 -17
View File
@@ -1,11 +1,23 @@
include version.all
$(call assert,$(call seq,$(TARGET_PREFIX),arm-webos-linux-gnueabi-),webOS SDK isn't setup properly. See https://github.com/webosbrew/meta-lg-webos-ndk#compile-program-by-command-line)
ifneq ($(CROSS_COMPILE),arm-webos-linux-gnueabi-)
$(error You need webOS toolchain to build this. See https://github.com/webosbrew/native-toolchain)
endif
WEBOS_FREETYPE_CONFIG ?= $(SDKTARGETSYSROOT)/usr/bin/freetype-config
ifdef SDKTARGETSYSROOT
$(warning OE-based toolchain isn't supported anymore. Please use https://github.com/webosbrew/native-toolchain)
STAGING_DIR = $(SDKTARGETSYSROOT)
else ifndef STAGING_DIR
$(error Can't find buildroot based toolchain. Please use https://github.com/webosbrew/native-toolchain)
endif
WEBOS_INC_DIR ?= $(SDKTARGETSYSROOT)/usr/include
WEBOS_LIB_DIR ?= $(SDKTARGETSYSROOT)/usr/lib
WEBOS_FREETYPE_CONFIG ?= $(STAGING_DIR)/usr/bin/freetype-config
WEBOS_INC_DIR ?= $(STAGING_DIR)/usr/include
WEBOS_LIB_DIR ?= $(STAGING_DIR)/usr/lib
ADD_SDL2_LIB ?= 0
SDL2_PREBUILT_ARCHIVE ?= https://github.com/webosbrew/SDL-webOS/releases/download/release-2.30.0-2/SDL2-2.30.0-webos.tar.gz
#########################
#########################
@@ -15,7 +27,7 @@ PACKAGE_VERSION := $(patsubst "%",%,$(RARCH_VERSION))
DEBUG ?= 0
HAVE_SCREENSHOTS = 0
HAVE_SCREENSHOTS = 1
HAVE_REWIND = 1
HAVE_7ZIP = 1
HAVE_ACCESSIBILITY = 1
@@ -67,11 +79,11 @@ HAVE_LIBRETRODB = 1
HAVE_MENU = 1
HAVE_MENU_COMMON = 1
HAVE_NEON = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_NETWORK_CMD = 1
HAVE_NETWORKGAMEPAD = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
HAVE_NETWORK_CMD = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_NETWORKGAMEPAD = 1
HAVE_GFX_WIDGETS = 1
HAVE_MMAP = 1
HAVE_ONLINE_UPDATER = 1
@@ -97,7 +109,7 @@ HAVE_SHADERPIPELINE = 1
HAVE_STB_FONT = 1
HAVE_STB_IMAGE = 1
HAVE_STB_VORBIS = 1
HAVE_STDIN_CMD = 0
HAVE_STDIN_CMD = 1
HAVE_STRCASESTR = 1
HAVE_THREADS = 1
HAVE_UDEV = 0
@@ -113,12 +125,14 @@ HAVE_CHEEVOS = 1
HAVE_LIBSHAKE = 1
HAVE_UPDATE_ASSETS = 1
HAVE_UPDATE_CORES = 1
HAVE_UPDATE_CORE_INFO = 1
HAVE_CORE_INFO_CACHE = 1
OS = Linux
TARGET = retroarch
OBJ :=
LINK := $(CXX)
LINK := $(CC)
DEF_FLAGS += -ffunction-sections -fdata-sections
DEF_FLAGS += -I. -Ideps -Ideps/stb -DWEBOS=1 -MMD
DEF_FLAGS += -Wall -Wno-unused-variable
@@ -126,7 +140,7 @@ LIBS := -ldl -lz -lrt -pthread
CFLAGS :=
CXXFLAGS := -fno-exceptions -fno-rtti -std=c++11 -D__STDC_CONSTANT_MACROS
ASFLAGS :=
LDFLAGS := -Wl,--gc-sections
LDFLAGS := -Wl,-rpath=\$$ORIGIN/lib,--gc-sections
INCLUDE_DIRS = -I$(WEBOS_INC_DIR)
LIBRARY_DIRS = -L$(WEBOS_LIB_DIR)
DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
@@ -135,12 +149,15 @@ DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1
DEFINES += -DHAVE_FILTERS_BUILTIN
DEFINES += -DHAVE_SDL2
DEFINES += -DHAVE_PULSE
DEFINES += -DHAVE_NETWORKING -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
DEFINES += -DHAVE_NETWORKING -DHAVE_IFINFO -DHAVE_ONLINE_UPDATER -DHAVE_UPDATE_ASSETS -DHAVE_UPDATE_CORES
DEFINES += -DHAVE_UPDATE_CORE_INFO
SDL2_CFLAGS := $(shell pkg-config --cflags sdl2)
SDL2_LIBS := $(shell pkg-config --libs sdl2)
PKG_CONFIG=pkg-config
SDL2_CFLAGS := $(shell $(PKG_CONFIG) --cflags sdl2)
SDL2_LIBS := $(shell $(PKG_CONFIG) --libs sdl2)
OPENGLES_LIBS = -lGLESv2
PULSE_LIBS = $(shell pkg-config --libs libpulse)
PULSE_LIBS = $(shell $(PKG_CONFIG) --libs libpulse)
MMAP_LIBS = -lc
NEON_CFLAGS = -mfpu=neon
NEON_ASFLAGS = -mfpu=neon
@@ -218,15 +235,26 @@ clean:
rm -rf $(OBJDIR_BASE)
rm -f $(TARGET)
rm -f *.d
rm -rf SDL
rm -rf webos/*.ipk
rm -rf webos/dist
ipk: $(TARGET)
sdl2: $(TARGET)
ifeq ($(ADD_SDL2_LIB), 1)
@echo "Downloading SDL2 prebuilt"
mkdir -p SDL
wget -qO - $(SDL2_PREBUILT_ARCHIVE) | tar -C SDL -zxvf -
endif
ipk: $(TARGET) sdl2
rm -rf webos/dist
mkdir -p webos/dist/lib
echo "$$APPINFO" > webos/dist/appinfo.json
cp -t webos/dist -vf $(TARGET) webos/icon160.png
cp -t webos/dist/lib -vf $(WEBOS_LIB_DIR)/libstdc++.so.6
ifeq ($(ADD_SDL2_LIB), 1)
cp -t webos/dist/lib -vf SDL/lib/libSDL2-2.0.so.0
endif
$(STRIP) webos/dist/$(TARGET)
cd webos && ares-package dist
+52 -132
View File
@@ -1,15 +1,19 @@
ROOT_DIR := .
DEPS_DIR := $(ROOT_DIR)/deps
DEBUG ?= 0
LOAD_WITHOUT_CORE_INFO ?= 0
HAVE_LOGGER = 0
HAVE_FILE_LOGGER = 0
HAVE_CC_RESAMPLER = 1
WHOLE_ARCHIVE_LINK = 0
BIG_STACK = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
PC_DEVELOPMENT_IP_ADDRESS = 255.255.255.255
PC_DEVELOPMENT_UDP_PORT = 3490
RARCH_CONSOLE = 0
USBGECKO = 0
HAVE_STATIC_DUMMY ?= 0
SPACE :=
SPACE := $(SPACE) $(SPACE)
@@ -44,7 +48,15 @@ ifeq ($(WHOLE_ARCHIVE_LINK), 1)
WHOLE_END := -Wl,--no-whole-archive
endif
LIBS := $(WHOLE_START) -lretro_wii $(WHOLE_END)
LIB_CORE :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIB_CORE += -lretro_wii
endif
LIBS := $(WHOLE_START) $(LIB_CORE) $(WHOLE_END)
libogc_platform := 1
@@ -63,16 +75,18 @@ ifeq ("$(wildcard $(ELF2DOL))","")
ELF2DOL = $(DEVKITPRO)/tools/bin/elf2dol$(EXE_EXT)
endif
INCLUDE += -I. -I$(DEVKITPRO)/libogc/include -Iwii/libogc/include
INCLUDE += -I.
ifeq ($(EXTERNAL_LIBOGC), 1)
CFLAGS += -DEXTERNAL_LIBOGC
CXXFLAGS += -DEXTERNAL_LIBOGC
LIBDIRS += -L$(DEVKITPRO)/libogc/lib/wii
INCLUDE += -I$(DEVKITPRO)/libogc/include
else
CFLAGS += -DINTERNAL_LIBOGC
CXXFLAGS += -DINTERNAL_LIBOGC
LIBDIRS += -Lwii/libogc/libs/wii
INCLUDE += -Iwii/libogc/include
endif
ifeq ($(GX_PTHREAD_LEGACY), 1)
@@ -100,6 +114,10 @@ LIBS += -lwiiuse -lbte
ifeq ($(USBGECKO), 1)
LIBS += -ldb
endif
ifeq ($(HAVE_LOGGER), 1)
LIBS += -lbba
endif
LIBS += -logc
@@ -116,22 +134,37 @@ HAVE_RBMP := 1
HAVE_RTGA := 1
HAVE_IBXM := 1
HAVE_OVERLAY := 1
HAVE_VIDEO_LAYOUT := 0
HAVE_ZLIB := 1
HAVE_7ZIP := 1
HAVE_CONFIGFILE := 1
HAVE_PATCH := 1
HAVE_XDELTA := 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_CHEATS := 1
HAVE_SCREENSHOTS := 1
HAVE_REWIND := 1
HAVE_AUDIOMIXER := 1
HAVE_RWAV := 1
RARCH_CONSOLE = 1
HAVE_CHEATS := 1
HAVE_CORE_INFO_CACHE := 1
HAVE_MENU_COMMON := 1
HAVE_MENU := 1
HAVE_BUILTINZLIB := 1
HAVE_STATIC_AUDIO_FILTERS := 1
HAVE_STATIC_VIDEO_FILTERS := 1
#HAVE_LANGEXTRA := 1
HAVE_WIIUSB_HID := 1
HAVE_HID := 1
HAVE_RARCH_EXEC := 1
HAVE_RSOUND := 0
HAVE_XMB := 0
HAVE_OZONE := 0
HAVE_RGUI := 1
HAVE_MATERIALUI := 0
HAVE_CHEEVOS := 1
CFLAGS += -DHAVE_SOCKET_LEGACY -DHAVE_CHEEVOS
APP_BOOTER_DIR = wii/app_booter
PLATOBJS := $(APP_BOOTER_DIR)/app_booter.binobj
@@ -140,19 +173,24 @@ ifeq ($(USBGECKO), 1)
CFLAGS += -DUSBGECKO
endif
HAVE_CHEATS := 1
CFLAGS += -Wall -std=gnu99 $(MACHDEP) $(PLATCFLAGS) $(INCLUDE)
INCLUDE += -I./libretro-common/include \
-Ideps \
-Ideps/rcheevos/include \
-Ideps/stb
CFLAGS += -Wall -std=gnu99 $(MACHDEP) $(PLATCFLAGS) $(INCLUDE)
OBJ = griffin/griffin.o $(PLATOBJS)
OBJ = $(PLATOBJS) audio/drivers/gx_audio.o gfx/drivers/gx_gfx.o input/drivers/gx_input.o frontend/drivers/platform_gx.o input/drivers_joypad/gx_joypad.o memory/wii/mem2_manager.o gfx/drivers/gx_gfx_vi_encoder.o frontend/drivers/platform_wii.o input/drivers_hid/wiiusb_hid.o
ifeq ($(HAVE_GRIFFIN_CPP), 1)
OBJ += griffin/griffin_cpp.o
ifeq ($(EXTERNAL_LIBOGC), 0)
OBJ += wii/libogc/libfat/libfat.o wii/libogc/libfat/fatfile.o wii/libogc/libfat/file_allocation_table.o wii/libogc/libfat/cache.o wii/libogc/libfat/fatdir.o wii/libogc/libfat/partition.o wii/libogc/libfat/directory.o wii/libogc/libfat/filetime.o wii/libogc/libfat/disc.o
endif
include Makefile.common
CFLAGS += $(DEFINES) -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" \
-DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT) \
ifeq ($(WANT_GLSLANG), 1)
OBJ += griffin/griffin_glslang.o
endif
@@ -162,28 +200,18 @@ ifeq ($(HAVE_LOGGER), 1)
CFLAGS += -DPC_DEVELOPMENT_IP_ADDRESS=\"$(PC_DEVELOPMENT_IP_ADDRESS)\" -DPC_DEVELOPMENT_UDP_PORT=$(PC_DEVELOPMENT_UDP_PORT)
endif
CFLAGS += -DHAVE_SOCKET_LEGACY
ifeq ($(HAVE_KERNEL_PRX), 1)
CFLAGS += -DHAVE_KERNEL_PRX
endif
ifeq ($(HAVE_WIIUSB_HID), 1)
CFLAGS += -DHAVE_WIIUSB_HID -DHAVE_HID
endif
ifeq ($(HAVE_LIBRETRODB), 1)
CFLAGS += -DHAVE_LIBRETRODB
CFLAGS += -DHAVE_WIIUSB_HID
endif
ifeq ($(BIG_STACK),1)
CFLAGS += -DBIG_STACK
endif
ifeq ($(HAVE_RJPEG), 1)
CFLAGS += -DHAVE_RJPEG
endif
ifeq ($(HAVE_FILE_LOGGER), 1)
CFLAGS += -DHAVE_FILE_LOGGER
endif
@@ -197,66 +225,6 @@ ifeq ($(HAVE_ZLIB), 1)
CFLAGS += -I./libretro-common/include/compat/zlib
endif
ifeq ($(HAVE_RPNG), 1)
CFLAGS += -DHAVE_RPNG
endif
ifeq ($(HAVE_RBMP), 1)
CFLAGS += -DHAVE_RBMP
endif
ifeq ($(HAVE_RTGA), 1)
CFLAGS += -DHAVE_RTGA
endif
ifeq ($(HAVE_IMAGEVIEWER), 1)
CFLAGS += -DHAVE_IMAGEVIEWER
endif
ifeq ($(HAVE_BSV_MOVIE), 1)
CFLAGS += -DHAVE_BSV_MOVIE
endif
ifeq ($(HAVE_RUNAHEAD), 1)
CFLAGS += -DHAVE_RUNAHEAD
endif
ifeq ($(HAVE_7ZIP), 1)
CFLAGS += -DHAVE_7ZIP -D_7ZIP_ST
endif
ifeq ($(HAVE_SCREENSHOTS), 1)
CFLAGS += -DHAVE_SCREENSHOTS
endif
ifeq ($(HAVE_REWIND), 1)
CFLAGS += -DHAVE_REWIND
endif
ifeq ($(HAVE_AUDIOMIXER), 1)
CFLAGS += -DHAVE_AUDIOMIXER
endif
ifeq ($(HAVE_RWAV), 1)
CFLAGS += -DHAVE_RWAV
endif
ifeq ($(HAVE_OVERLAY), 1)
CFLAGS += -DHAVE_OVERLAY
endif
ifeq ($(HAVE_VIDEO_LAYOUT), 1)
CFLAGS += -DHAVE_VIDEO_LAYOUT
endif
ifeq ($(HAVE_NETWORKING), 1)
CFLAGS += -DHAVE_NETWORKING
endif
ifeq ($(HAVE_NETPLAYDISCOVERY), 1)
CFLAGS += -DHAVE_NETPLAYDISCOVERY
endif
ifeq ($(RARCH_CONSOLE), 1)
CFLAGS += -DRARCH_CONSOLE
endif
@@ -267,50 +235,10 @@ endif
CFLAGS += -std=gnu99 -DHAVE_RGUI -DHAVE_MENU -DHAVE_GRIFFIN=1 -Wno-char-subscripts -DRARCH_INTERNAL
ifeq ($(HAVE_MATERIALUI), 1)
CFLAGS += -DHAVE_MATERIALUI
endif
ifeq ($(HAVE_XMB), 1)
CFLAGS += -DHAVE_XMB
endif
ifeq ($(HAVE_STB_FONT), 1)
CFLAGS += -DHAVE_STB_FONT
endif
ifeq ($(HAVE_LANGEXTRA), 1)
CFLAGS += -DHAVE_LANGEXTRA
endif
ifeq ($(HAVE_DSP_FILTER), 1)
CFLAGS += -DHAVE_DSP_FILTER
endif
ifeq ($(HAVE_VIDEO_FILTER), 1)
CFLAGS += -DHAVE_VIDEO_FILTER
endif
ifeq ($(HAVE_FILTERS_BUILTIN), 1)
CFLAGS += -DHAVE_FILTERS_BUILTIN
endif
ifeq ($(HAVE_THREADS), 1)
CFLAGS += -DHAVE_THREADS
endif
ifeq ($(HAVE_CONFIGFILE), 1)
CFLAGS += -DHAVE_CONFIGFILE
endif
ifeq ($(HAVE_PATCH), 1)
CFLAGS += -DHAVE_PATCH
endif
ifeq ($(HAVE_CHEATS), 1)
CFLAGS += -DHAVE_CHEATS
endif
ifeq ($(HAVE_RSOUND), 1)
CFLAGS += -DHAVE_RSOUND
endif
@@ -319,22 +247,10 @@ ifeq ($(HAVE_GETOPT_LONG), 1)
CFLAGS += -DHAVE_GETOPT_LONG=1
endif
ifeq ($(HAVE_DYLIB), 1)
CFLAGS += -DHAVE_DYLIB
endif
ifeq ($(HAVE_NETWORK_CMD), 1)
CFLAGS += -DHAVE_NETWORK_CMD
endif
ifeq ($(HAVE_COMMAND), 1)
CFLAGS += -DHAVE_COMMAND
endif
ifeq ($(HAVE_STDIN_CMD), 1)
CFLAGS += -DHAVE_STDIN_CMD
endif
ifeq ($(HAVE_DYNAMIC), 1)
CFLAGS += -DHAVE_DYNAMIC
endif
@@ -345,6 +261,10 @@ else
CFLAGS += -O3
endif
ifeq ($(LOAD_WITHOUT_CORE_INFO),1)
CFLAGS += -DLOAD_WITHOUT_CORE_INFO
endif
OBJOUT = -o
LINKOUT = -o
LINK = $(CXX)
+1
View File
@@ -78,6 +78,7 @@ OBJ = frontend/frontend_salamander.o \
libretro-common/file/retro_dirent.o \
libretro-common/encodings/encoding_utf.o \
libretro-common/compat/compat_strl.o \
libretro-common/compat/compat_strldup.o \
libretro-common/compat/compat_strcasestr.o \
libretro-common/compat/fopen_utf8.o \
libretro-common/file/config_file.o \
+19 -3
View File
@@ -5,8 +5,10 @@ BUILD_RPX = 1
DEBUG = 0
GRIFFIN_BUILD = 0
SALAMANDER_BUILD = 0
HAVE_STATIC_DUMMY ?= 0
WHOLE_ARCHIVE_LINK = 0
WIIU_HID = 1
HAVE_HID = 1
HAVE_RUNAHEAD = 1
WIIU_LOG_RPX = 0
BUILD_DIR = objs/wiiu
@@ -64,6 +66,7 @@ ifeq ($(SALAMANDER_BUILD),1)
OBJ += libretro-common/lists/dir_list.o
OBJ += libretro-common/file/retro_dirent.o
OBJ += libretro-common/compat/compat_strl.o
OBJ += libretro-common/compat/compat_strldup.o
OBJ += libretro-common/file/config_file.o
OBJ += libretro-common/streams/file_stream.o
OBJ += libretro-common/vfs/vfs_implementation.o
@@ -79,6 +82,7 @@ else
DEFINES += -DHAVE_ONLINE_UPDATER
DEFINES += -DHAVE_UPDATE_ASSETS
DEFINES += -DHAVE_UPDATE_CORES
DEFINES += -DHAVE_UPDATE_CORE_INFO
DEFINES += -DHAVE_FILTERS_BUILTIN
DEFINES += -DHAVE_SLANG
DEFINES += -DHAVE_SHADERPIPELINE
@@ -117,12 +121,13 @@ endif
DEFINES += -DHAVE_REWIND
DEFINES += -DHAVE_ZLIB -DHAVE_RPNG -DHAVE_RJPEG -DHAVE_RBMP -DHAVE_RTGA -DHAVE_CC_RESAMPLER
DEFINES += -DHAVE_SPIRV_CROSS -DHAVE_SLANG
DEFINES += -DHAVE_STB_FONT -DHAVE_STB_VORBIS -DHAVE_LANGEXTRA -DHAVE_LIBRETRODB -DHAVE_NETWORKING -DHAVE_NETPLAYDISCOVERY
DEFINES += -DHAVE_STB_FONT -DHAVE_STB_VORBIS -DHAVE_LANGEXTRA -DHAVE_LIBRETRODB -DHAVE_NETWORKING -DHAVE_IFINFO -DHAVE_NETPLAYDISCOVERY
#DEFINES += -DWANT_IFADDRS
#DEFINES += -DHAVE_FREETYPE
DEFINES += -DHAVE_XMB -DHAVE_MATERIALUI
DEFINES += -DHAVE_HID
DEFINES += -DWANT_LIBFAT -DHAVE_LIBFAT -DWANT_IOSUHAX -DHAVE_IOSUHAX
DEFINES += -DHAVE_CORE_INFO_CACHE
DEFINES += -DSPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS
# $(GRIFFIN_BUILD),0
@@ -138,6 +143,7 @@ endif
HAVE_RBMP = 1
HAVE_CONFIGFILE = 1
HAVE_PATCH = 1
HAVE_XDELTA = 0 # disabled because <lzma.h> isn't available (or we haven't figured out how to install it)
HAVE_REWIND = 1
HAVE_CHEATS = 1
HAVE_MENU = 1
@@ -153,19 +159,20 @@ endif
HAVE_LANGEXTRA = 1
HAVE_LIBRETRODB = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_CHEEVOS = 1
#WANT_IFADDRS = 1
HAVE_OVERLAY = 1
HAVE_SPIRV_CROSS = 1
HAVE_SLANG = 1
HAVE_VIDEO_LAYOUT = 0
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_STATIC_VIDEO_FILTERS = 1
HAVE_STATIC_AUDIO_FILTERS = 1
WANT_LIBFAT = 1
WANT_IOSUHAX = 1
HAVE_CORE_INFO_CACHE = 1
include Makefile.common
DEFINES += $(DEF_FLAGS)
@@ -220,7 +227,16 @@ ifeq ($(WHOLE_ARCHIVE_LINK), 1)
WHOLE_END := -Wl,--no-whole-archive
endif
LIBS := $(WHOLE_START) -lretro_wiiu $(WHOLE_END) -lm
LIB_CORE :=
ifeq ($(HAVE_STATIC_DUMMY),1)
DEFINES += -DHAVE_STATIC_DUMMY
else
LIB_CORE += -lretro_wiiu
endif
LIBS := $(WHOLE_START) $(LIB_CORE) $(WHOLE_END) -lm
# Use portlibs zlib if deps/ isn't being used
ifeq ($(HAVE_ZLIB),1)
+3 -9
View File
@@ -11,6 +11,7 @@ HAVE_OPENGL = 1
HAVE_DYLIB = 1
HAVE_D3D9 = 1
HAVE_NETWORKING = 1
HAVE_IFINFO = 1
HAVE_NETPLAYDISCOVERY = 1
HAVE_STDIN_CMD = 1
HAVE_COMMAND = 1
@@ -25,8 +26,8 @@ HAVE_MATERIALUI = 1
HAVE_DSP_FILTER = 1
HAVE_VIDEO_FILTER = 1
HAVE_7ZIP = 1
HAVE_PYTHON = 0
DYNAMIC = 1
HAVE_CORE_INFO_CACHE = 1
HAVE_XINPUT = 1
HAVE_WINMM = 1
@@ -34,7 +35,6 @@ HAVE_WINMM = 1
HAVE_SDL := 0
HAVE_SDL2 := 0
HAVE_RSOUND := 0
HAVE_PYTHON := 0
HAVE_STB_FONT := 1
HAVE_FREETYPE := 1
@@ -83,11 +83,6 @@ RSOUND_CFLAGS := -DHAVE_RSOUND
RSOUND_LIBS := -lrsound
endif
ifeq ($(HAVE_PYTHON), 1)
PYTHON_LIBS := -lpython32
PYTHON_CFLAGS := -DHAVE_PYTHON -Ipython
endif
ifeq ($(HAVE_FFMPEG), 1)
AVCODEC_LIBS := -lavcodec
AVUTIL_LIBS := -lavutil
@@ -104,7 +99,6 @@ OBJ :=
LIBS := -lm
DEFINES :=
DEFINES += -I. -Ilibretro-common/include -Ilibretro-common/include/compat/zlib -DRARCH_INTERNAL -DHAVE_SCREENSHOTS -DHAVE_OVERLAY
#DEFINES += -DHAVE_VIDEO_LAYOUT
LDFLAGS := -L. -static-libgcc
include Makefile.common
@@ -175,7 +169,7 @@ $(OBJDIR)/%.o: %.cpp | $(dir $@)
$(OBJDIR)/%.o: %.rc $(HEADERS)
@-mkdir -p $(dir $@) || mkdir $(subst /,\,$(dir $@)) || echo .
@$(if $(Q), $(shell echo echo WINDRES $<),)
$(Q)$(WINDRES) -o $@ $<
$(Q)$(WINDRES) $(DEFINES) -o $@ $<
clean:
rm -rf $(OBJDIR)
+2 -2
View File
@@ -76,11 +76,11 @@ In the end you should have this on your system:
gl3.h
gl3platform.h
To enable mali_fbdev you must configure RetroArch with --enable-gles and --enable-mali_fbdev.
To enable mali_fbdev you must configure RetroArch with --enable-opengles and --enable-mali_fbdev.
This is an example of what you would use on a CubieBoard2 for a lightweight RetroArch:
./configure --enable-gles --enable-mali_fbdev --disable-x11 --disable-sdl2 --enable-floathard --disable-ffmpeg --disable-netplay --enable-udev --disable-sdl --disable-pulse --disable-oss --disable-freetype --disable-7zip
./configure --enable-opengles --enable-mali_fbdev --disable-x11 --disable-sdl2 --enable-floathard --disable-ffmpeg --disable-netplay --enable-udev --disable-sdl --disable-pulse --disable-oss --disable-freetype --disable-7zip
NOTE: A TTY hack is used to auto-clean the console on exit, and the fbdev ioctls are used to retrieve
current video mode. Both things work good, but they are not exactly ideal solutions.
+80 -20
View File
@@ -64,33 +64,52 @@ RetroArch also emphasizes being easy to integrate into various launcher frontend
## Platforms
RetroArch has been ported to the following platforms:
- Android (2.x to most recent version)
- Apple iOS
- Apple macOS (PPC, x86-32 and x86-64)
- Apple tvOS
- Blackberry
- DOS
- Windows
- Linux
- Emscripten (WebAssembly and JavaScript)
- FreeBSD
- NetBSD
- OpenBSD
- Haiku
- Solaris
- macOS (PPC, x86-32 and x86-64)
- PlayStation 2
- PlayStation 3
- PlayStation Portable
- PlayStation Vita
- Original Microsoft Xbox
- Linux
- Microsoft Xbox 360 (Libxenon/XeXDK)
- Microsoft Xbox One
- Microsoft Xbox Series S/X
- Miyoo
- NetBSD
- Nintendo 3DS/2DS
- Nintendo GameCube
- Nintendo NES/SNES Classic Edition
- Nintendo Switch
- Nintendo Wii
- Nintendo Wii U
- Nintendo 3DS/2DS
- Nintendo Switch
- Nintendo NES/SNES Classic Edition
- OpenBSD
- OpenDingux
- Original Microsoft Xbox
- PlayStation2
- PlayStation3
- PlayStation4
- PlayStation Portable
- PlayStation Vita
- Raspberry Pi
- Android
- iOS
- Blackberry
- ReactOS
- RetroFW
- RS90
- SerenityOS
- Solaris
- Windows 10
- Windows 11
- Windows 2000
- Windows 7
- Windows 8
- Windows 95
- Windows 98
- Windows Millennium
- Windows NT 3.5
- Windows Vista
- Windows XP
## Dependencies (PC)
@@ -133,6 +152,47 @@ dynamically, it's not required at build time.
Console ports have their own dependencies, but generally do not require
anything other than what the respective SDKs provide.
## Requirements
### OpenGL1 ###
Your videocard needs to at least support the OpenGL 1.1 spec.
***Shaders***: N/A
**Menu driver support**: MaterialUI, XMB, Ozone and RGUI should all work correctly.
XMB won't have shader pipeline effects because of the aforementioned lack of shader
support.
### OpenGL2 ###
Your videocard needs to at least support the OpenGL 2.1 spec.
***Shaders:*** You can choose between either NVIDIA Cg shaders (deprecated, requires separate runtime
to be installed on your system), or GLSL shaders.
***Menu driver support:*** MaterialUI, XMB, Ozone and RGUI should all work correctly.
### OpenGL3 ###
Your videocard needs to at least support the OpenGL 3.2 core feature spec.
***Shaders:*** You will be able to use modern Slang shaders with this driver.
***Menu driver support:*** MaterialUI, XMB, Ozone and RGUI should all work correctly.
### Direct3D 11 ###
Your videocard needs to at least support the Direct3D11 11.0 spec. The card
also needs to support at least the Shader Model 4.0.
***Shaders:*** You will be able to use modern Slang shaders with this driver.
***Menu driver support:*** MaterialUI, XMB, Ozone and RGUI should all work correctly.
### Vulkan ###
Your videocard needs to at least support the Vulkan 1.0 spec.
***Shaders:*** You will be able to use modern Slang shaders with this driver.
***Menu driver support:*** MaterialUI, XMB, Ozone and RGUI should all work correctly.
## Configuring
The default configuration is defined in `config.def.h`.
@@ -143,7 +203,7 @@ A sample configuration file is installed to `/etc/retroarch.cfg`. This is the sy
RetroArch will on startup create a config file in `$XDG\_CONFIG\_HOME/retroarch/retroarch.cfg` if it does not exist.
Users only need to configure a certain option if the desired value deviates from the value defined in config.def.h.
To configure joypads, use the built-in menu or the `retroarch-joyconfig` command-line tool.
To configure joypads, use the built-in menu or manually configure them in `retroarch.cfg`.
## Compiling and installing
@@ -276,7 +336,7 @@ The links below belong to our official channels. Links other than this may have
- [YouTube Topic](https://www.youtube.com/channel/UC5q007PYyQPgin0HHbzF0zQ)
- [Patreon](https://www.patreon.com/libretro)
- [BOUNTYSOURCE](https://www.bountysource.com/teams/libretro/issues)
- [Discord](https://discord.gg/27Xxm2h)
- [Discord](https://discord.com/invite/VZ2b7wghxR)
- [Teespring](https://teespring.com/stores/retroarch)
- [Documentation](https://docs.libretro.com/)
- [Forum](https://forums.libretro.com/)
+124
View File
@@ -30,4 +30,128 @@
#include "config.h"
#endif
#include "configuration.h"
#include "tasks/tasks_internal.h"
#ifdef HAVE_THREADS
#include "rthreads/rthreads.h"
#endif
typedef struct
{
/* The last request task, used to prepare and send the translation */
retro_task_t *request_task;
/* The last response task, used to parse costly translation data */
retro_task_t *response_task;
/* Timestamp of the last translation request */
retro_time_t last_call;
#ifdef HAVE_THREADS
/* Necessary because last_image is manipulated by task handlers */
slock_t *image_lock;
#endif
/* Frame captured during the last call to the translation service */
uint8_t *last_image;
unsigned last_image_size;
/* 1 if the automatic mode has been enabled, 0 otherwise */
int ai_service_auto;
/* Text-to-speech narrator override flag */
bool enabled;
} access_state_t;
bool is_accessibility_enabled(bool accessibility_enable, bool accessibility_enabled);
#ifdef HAVE_TRANSLATE
bool is_narrator_running(bool accessibility_enable);
#endif
/*
Invoke this method to send a request to the AI service.
It makes the following POST request using URL params:
– source_lang (optional): language code of the content currently running.
– target_lang (optional): language of the content to return.
– output: comma-separated list of formats that must be provided by the
service. Also lists supported sub-formats.
The currently supported formats are:
– sound: raw audio to playback. (wav)
– text: text to be read through internal text-to-speech capabilities.
'subs' can be specified on top of that to explain that we are looking
for short text response in the manner of subtitles.
– image: image to display on top of the video feed. Widgets will be used
first if possible, otherwise we'll try to draw it directly on the
video buffer. (bmp, png, png-a) [All in 24-bits BGR formats]
In addition, the request contains a JSON payload, formatted as such:
– image: captured frame from the currently running content (in base64).
– format: format of the captured frame ("png", or "bmp").
– coords: array describing the coordinates of the image within the
viewport space (x, y, width, height).
– viewport: array describing the size of the viewport (width, height).
– label: a text string describing the content (<system id>__<content id>).
– state: a JSON object describing the state of the frontend, containing:
– paused: 1 if the content has been paused, 0 otherwise.
– <key>: the name of a retropad input, valued 1 if pressed.
(a, b, x, y, l, r, l2, r2, l3, r3)
(up, down, left, right, start, select)
The translation component then expects a response from the AI service in the
form of a JSON payload, formatted as such:
– image: base64 representation of an image in a supported format.
– sound: base64 representation of a sound byte in a supported format.
– text: results from the service as a string.
– text_position: hint for the position of the text when the service is
running in text mode (ie subtitles). Position is a number,
1 for Bottom or 2 for Top (defaults to bottom).
– press: a list of retropad input to forcibly press. On top of the
expected keys (cf. 'state' above) values 'pause' and 'unpause' can be
specified to control the flow of the content.
– error: any error encountered with the request.
– auto: either 'auto' or 'continue' to control automatic requests.
All fields are optional, but at least one of them must be present.
If 'error' is set, the error is shown to the user and everything else is
ignored, even 'auto' settings.
With 'auto' on 'auto', RetroArch will automatically send a new request
(with a minimum delay enforced by uints.ai_service_poll_delay), with a value
of 'continue', RetroArch will ignore the returned content and skip to the
next automatic request. This allows the service to specify that the returned
content is the same as the one previously sent, so RetroArch does not need to
update its display unless necessary. With 'continue' the service *must*
still send the content, as we may need to display it if the user paused the
AI service for instance.
{paused} boolean is passed in to indicate if the current call was made
during a paused frame. Due to how the menu widgets work, if the AI service
is called in 'auto' mode, then this call will be made while the menu widgets
unpause the core for a frame to update the on-screen widgets. To tell the AI
service what the pause mode is honestly, we store the runloop_paused
variable from before the service wipes the widgets, and pass that in here.
*/
bool run_translation_service(settings_t *settings, bool paused);
void translation_release(bool inform);
/* Proxy for calls related to menu navigation */
bool navigation_say(
bool accessibility_enable,
unsigned accessibility_narrator_speech_speed,
const char* speak_text,
int priority);
/* Local platform-specific TTS */
bool accessibility_speak_priority(
unsigned accessibility_narrator_speech_speed,
const char *speak_text,
int priority,
const char* voice);
access_state_t *access_state_get_ptr(void);
#endif
+91 -2
View File
@@ -27,10 +27,15 @@ RETRO_BEGIN_DECLS
#define AUDIO_CHUNK_SIZE_NONBLOCKING 2048
#define AUDIO_MAX_RATIO 16
#define AUDIO_MIN_RATIO 0.0625
#define AUDIO_MIXER_MAX_STREAMS 16
#define AUDIO_MIXER_MAX_SYSTEM_STREAMS (AUDIO_MIXER_MAX_STREAMS + 5)
#define AUDIO_MIXER_MAX_SYSTEM_STREAMS (AUDIO_MIXER_MAX_STREAMS + 8)
/* Fastforward timing calculations running average samples. Helps with a
consistent pitch when fast-forwarding. */
#define AUDIO_FF_EXP_AVG_SAMPLES 16
/* do not define more than (MAX_SYSTEM_STREAMS - MAX_STREAMS) */
enum audio_mixer_system_slot
@@ -38,8 +43,11 @@ enum audio_mixer_system_slot
AUDIO_MIXER_SYSTEM_SLOT_OK = AUDIO_MIXER_MAX_STREAMS,
AUDIO_MIXER_SYSTEM_SLOT_CANCEL,
AUDIO_MIXER_SYSTEM_SLOT_NOTICE,
AUDIO_MIXER_SYSTEM_SLOT_NOTICE_BACK,
AUDIO_MIXER_SYSTEM_SLOT_BGM,
AUDIO_MIXER_SYSTEM_SLOT_ACHIEVEMENT_UNLOCK
AUDIO_MIXER_SYSTEM_SLOT_ACHIEVEMENT_UNLOCK,
AUDIO_MIXER_SYSTEM_SLOT_UP,
AUDIO_MIXER_SYSTEM_SLOT_DOWN
};
enum audio_action
@@ -75,6 +83,87 @@ enum audio_mixer_state
AUDIO_STREAM_STATE_PLAYING_SEQUENTIAL
};
/**
* Bit flags that describe the current state of the audio driver.
*/
enum audio_driver_state_flags
{
/**
* Indicates that the driver was successfully created
* and is currently valid.
* You may submit samples for output at any time.
*
* This flag does \em not mean that the player will hear anything;
* the driver might be suspended.
*
* @see AUDIO_FLAG_SUSPENDED
*/
AUDIO_FLAG_ACTIVE = (1 << 0),
/**
* Indicates that the audio driver outputs floating-point samples,
* as opposed to integer samples.
*
* All audio is sent through the resampler,
* which operates on floating-point samples.
*
* If this flag is set, then the resampled output doesn't need
* to be converted back to \c int16_t format.
*
* This won't affect the audio that the core writes;
* either way, it's supposed to output \c int16_t samples.
*
* This flag won't be set if the selected audio driver
* doesn't support (or is configured to not use) \c float samples.
*
* @see audio_driver_t::use_float
*/
AUDIO_FLAG_USE_FLOAT = (1 << 1),
/**
* Indicates that the audio driver is not currently rendering samples,
* although it's valid and can be resumed.
*
* Usually set when RetroArch needs to simulate audio output
* without actually rendering samples (e.g. runahead),
* or when reinitializing the driver.
*
* Samples will still be accepted, but they will be silently dropped.
*/
AUDIO_FLAG_SUSPENDED = (1 << 2),
/**
* Indicates that the audio mixer is available
* and can mix one or more audio streams.
*
* Will not be set if RetroArch was built without \c HAVE_AUDIOMIXER.
*/
AUDIO_FLAG_MIXER_ACTIVE = (1 << 3),
/**
* Indicates that the frontend will never need audio from the core,
* usually when runahead is active.
*
* When set, any audio received by the core will not be processed.
*
* Will not be set if RetroArch was built without \c HAVE_RUNAHEAD.
*
* @see RETRO_ENVIRONMENT_GET_AUDIO_VIDEO_ENABLE
*/
AUDIO_FLAG_HARD_DISABLE = (1 << 4),
/**
* Indicates that audio rate control is enabled.
* This means that the audio system will adjust the rate at which
* it sends samples to the driver,
* minimizing the occurrences of buffer overrun or underrun.
*
* @see audio_driver_t::write_avail
* @see audio_driver_t::buffer_size
*/
AUDIO_FLAG_CONTROL = (1 << 5)
};
typedef struct audio_statistics
{
unsigned samples;
+1940
View File
File diff suppressed because it is too large. Load diff
+450
View File
@@ -0,0 +1,450 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2010-2014 - Hans-Kristian Arntzen
* Copyright (C) 2011-2017 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __AUDIO_DRIVER__H
#define __AUDIO_DRIVER__H
#include <stdint.h>
#include <stdlib.h>
#include <stddef.h>
#include <sys/types.h>
#include <boolean.h>
#include <retro_common_api.h>
#include <retro_inline.h>
#include <libretro.h>
#include <retro_miscellaneous.h>
#ifdef HAVE_CONFIG_H
#include "../config.h"
#endif /* HAVE_CONFIG_H */
#ifdef HAVE_DSP_FILTER
#include <audio/dsp_filter.h>
#endif
#ifdef HAVE_AUDIOMIXER
#include <audio/audio_mixer.h>
#endif
#include <audio/audio_resampler.h>
#include "audio_defines.h"
#define AUDIO_BUFFER_FREE_SAMPLES_COUNT (8 * 1024)
RETRO_BEGIN_DECLS
#ifdef HAVE_AUDIOMIXER
typedef struct audio_mixer_stream
{
audio_mixer_sound_t *handle;
audio_mixer_voice_t *voice;
audio_mixer_stop_cb_t stop_cb;
void *buf;
char *name;
size_t bufsize;
float volume;
enum audio_mixer_stream_type stream_type;
enum audio_mixer_type type;
enum audio_mixer_state state;
} audio_mixer_stream_t;
typedef struct audio_mixer_stream_params
{
void *buf;
char *basename;
audio_mixer_stop_cb_t cb;
size_t bufsize;
unsigned slot_selection_idx;
float volume;
enum audio_mixer_slot_selection_type slot_selection_type;
enum audio_mixer_stream_type stream_type;
enum audio_mixer_type type;
enum audio_mixer_state state;
} audio_mixer_stream_params_t;
#endif
typedef struct audio_driver
{
/* Creates and initializes handle to audio driver.
*
* Returns: audio driver handle on success, otherwise NULL.
**/
void *(*init)(const char *device, unsigned rate,
unsigned latency, unsigned block_frames, unsigned *new_rate);
/*
* @data : Pointer to audio data handle.
* @buf : Audio buffer data.
* @size : Size of audio buffer.
*
* Write samples to audio driver.
*
* Write data in buffer to audio driver.
* A frame here is defined as one combined sample of left and right
* channels. (I.e. 44.1kHz, 16-bit stereo has 88.2k samples/s, and
* 44.1k frames/s.)
*
* Samples are interleaved in format LRLRLRLRLR ...
* If the driver returns true in use_float(), a floating point
* format will be used, with range [-1.0, 1.0].
* If not, signed 16-bit samples in native byte ordering will be used.
*
* This function returns the number of frames successfully written.
* If an error occurs, -1 should be returned.
* Note that non-blocking behavior that cannot write at this time
* should return 0 as returning -1 will terminate the driver.
*
* Unless said otherwise with set_nonblock_state(), all writes
* are blocking, and it should block till it has written all frames.
*/
ssize_t (*write)(void *data, const void *buf, size_t size);
/**
* Temporarily pauses the audio driver.
*
* @param data Opaque handle to the audio driver context
* that was returned by \c init.
* @return \c true if the audio driver was successfully paused,
* \c false if there was an error.
**/
bool (*stop)(void *data);
/**
* Resumes audio driver from the paused state.
**/
bool (*start)(void *data, bool is_shutdown);
/* Is the audio driver currently running? */
bool (*alive)(void *data);
/* Should we care about blocking in audio thread? Fast forwarding.
*
* If state is true, nonblocking operation is assumed.
* This is typically used for fast-forwarding. If driver cannot
* implement nonblocking writes, this can be disregarded, but should
* log a message to stderr.
* */
void (*set_nonblock_state)(void *data, bool toggle);
/* Stops and frees driver. */
void (*free)(void *data);
/* Defines if driver will take standard floating point samples,
* or int16_t samples.
*
* If true is returned, the audio driver is capable of using
* floating point data. This will likely increase performance as the
* resampler unit uses floating point. The sample range is
* [-1.0, 1.0].
* */
bool (*use_float)(void *data);
/* Human-readable identifier. */
const char *ident;
/* Optional. Get audio device list (allocates, caller has to free this) */
void *(*device_list_new)(void *data);
/* Optional. Frees audio device list */
void (*device_list_free)(void *data, void *data2);
/* Optional. */
size_t (*write_avail)(void *data);
size_t (*buffer_size)(void *data);
} audio_driver_t;
typedef struct
{
double source_ratio_original;
double source_ratio_current;
uint64_t free_samples_count;
struct string_list *devices_list;
/**
* A scratch buffer for audio output to be processed,
* up to (but excluding) the point where it's converted to 16-bit audio
* to give to the driver.
*/
float *output_samples_buf;
size_t output_samples_buf_length;
#ifdef HAVE_REWIND
int16_t *rewind_buf;
#endif
/**
* A scratch buffer for processed audio output to be converted to 16-bit,
* so that it can be sent to the driver.
*/
int16_t *output_samples_conv_buf;
size_t output_samples_conv_buf_length;
#ifdef HAVE_DSP_FILTER
retro_dsp_filter_t *dsp;
#endif
const retro_resampler_t *resampler;
void *resampler_data;
/**
* The current audio driver.
*/
const audio_driver_t *current_audio;
void *context_audio_data;
/**
* Scratch buffer for preparing data for the resampler
*/
float *input_data;
size_t input_data_length;
#ifdef HAVE_AUDIOMIXER
struct audio_mixer_stream mixer_streams[AUDIO_MIXER_MAX_SYSTEM_STREAMS];
#endif
struct retro_audio_callback callback; /* ptr alignment */
/* ptr alignment */
size_t chunk_size;
size_t chunk_nonblock_size;
size_t chunk_block_size;
#ifdef HAVE_REWIND
size_t rewind_ptr;
size_t rewind_size;
#endif
size_t buffer_size;
size_t data_ptr;
unsigned free_samples_buf[AUDIO_BUFFER_FREE_SAMPLES_COUNT];
#ifdef HAVE_AUDIOMIXER
float mixer_volume_gain;
#endif
float rate_control_delta;
float input;
float volume_gain;
enum resampler_quality resampler_quality;
uint8_t flags;
char resampler_ident[64];
bool mute_enable;
#ifdef HAVE_AUDIOMIXER
bool mixer_mute_enable;
#endif
/* Sample the flush delta-time when fast forwarding to find the correct ratio. */
retro_time_t last_flush_time;
/* Exponential moving average */
retro_time_t avg_flush_delta;
} audio_driver_state_t;
bool audio_driver_enable_callback(void);
bool audio_driver_disable_callback(void);
bool audio_driver_mixer_extension_supported(const char *ext);
void audio_driver_dsp_filter_free(void);
bool audio_driver_dsp_filter_init(const char *device);
void audio_driver_set_buffer_size(size_t bufsize);
bool audio_driver_get_devices_list(void **ptr);
void audio_driver_setup_rewind(void);
bool audio_driver_callback(void);
bool audio_driver_has_callback(void);
void audio_driver_frame_is_reverse(void);
void audio_set_float(enum audio_action action, float val);
float *audio_get_float_ptr(enum audio_action action);
bool *audio_get_bool_ptr(enum audio_action action);
#ifdef HAVE_AUDIOMIXER
audio_mixer_stream_t *audio_driver_mixer_get_stream(unsigned i);
bool audio_driver_mixer_add_stream(audio_mixer_stream_params_t *params);
void audio_driver_mixer_play_stream(unsigned i);
void audio_driver_mixer_play_menu_sound(unsigned i);
void audio_driver_mixer_play_scroll_sound(bool direction_up);
void audio_driver_mixer_play_menu_sound_looped(unsigned i);
void audio_driver_mixer_play_stream_sequential(unsigned i);
void audio_driver_mixer_play_stream_looped(unsigned i);
void audio_driver_mixer_stop_stream(unsigned i);
float audio_driver_mixer_get_stream_volume(unsigned i);
void audio_driver_mixer_set_stream_volume(unsigned i, float vol);
void audio_driver_mixer_remove_stream(unsigned i);
enum audio_mixer_state audio_driver_mixer_get_stream_state(unsigned i);
const char *audio_driver_mixer_get_stream_name(unsigned i);
void audio_driver_load_system_sounds(void);
#endif
bool audio_driver_start(bool is_shutdown);
bool audio_driver_stop(void);
/**
* If you need to query the size of audio samples,
* use this function instead of checking the flags directly.
*
* @return The size of a single audio sample in bytes,
* as determined by the presence of the \c AUDIO_FLAG_USE_FLOAT flag.
* Will currently return either 2 (for \c uint16_t) or 4 (for \c float),
* although this may change if we add support for more sample types.
*/
unsigned audio_driver_get_sample_size(void);
#ifdef HAVE_TRANSLATE
/* TODO/FIXME - Doesn't currently work. Fix this. */
bool audio_driver_is_ai_service_speech_running(void);
#endif
/**
* audio_compute_buffer_statistics:
*
* Computes audio buffer statistics.
*
**/
bool audio_compute_buffer_statistics(audio_statistics_t *stats);
bool audio_driver_init_internal(
void *settings_data,
bool audio_cb_inited);
bool audio_driver_deinit(void);
bool audio_driver_find_driver(
void *settings_data,
const char *prefix,
bool verbosity_enabled);
/**
* audio_driver_sample:
* @left : value of the left audio channel.
* @right : value of the right audio channel.
*
* Audio sample render callback function.
**/
void audio_driver_sample(int16_t left, int16_t right);
/**
* audio_driver_sample_batch:
* @data : pointer to audio buffer.
* @frames : amount of audio frames to push.
*
* Batched audio sample render callback function.
*
* Returns: amount of frames sampled.
**/
size_t audio_driver_sample_batch(const int16_t *data, size_t frames);
#ifdef HAVE_REWIND
/**
* audio_driver_sample_rewind:
* @left : value of the left audio channel.
* @right : value of the right audio channel.
*
* Audio sample render callback function (rewind version).
* This callback function will be used instead of
* audio_driver_sample when rewinding is activated.
**/
void audio_driver_sample_rewind(int16_t left, int16_t right);
/**
* audio_driver_sample_batch_rewind:
* @data : pointer to audio buffer.
* @frames : amount of audio frames to push.
*
* Batched audio sample render callback function (rewind version).
*
* This callback function will be used instead of
* audio_driver_sample_batch when rewinding is activated.
*
* Returns: amount of frames sampled.
**/
size_t audio_driver_sample_batch_rewind(
const int16_t *data, size_t frames);
#endif
#ifdef HAVE_MENU
void audio_driver_menu_sample(void);
#endif
extern audio_driver_t audio_rsound;
extern audio_driver_t audio_audioio;
extern audio_driver_t audio_oss;
extern audio_driver_t audio_alsa;
extern audio_driver_t audio_alsathread;
extern audio_driver_t audio_tinyalsa;
extern audio_driver_t audio_roar;
extern audio_driver_t audio_openal;
extern audio_driver_t audio_opensl;
extern audio_driver_t audio_jack;
extern audio_driver_t audio_sdl;
extern audio_driver_t audio_xa;
extern audio_driver_t audio_pulse;
extern audio_driver_t audio_dsound;
extern audio_driver_t audio_wasapi;
extern audio_driver_t audio_coreaudio;
extern audio_driver_t audio_coreaudio3;
extern audio_driver_t audio_xenon360;
extern audio_driver_t audio_ps3;
extern audio_driver_t audio_gx;
extern audio_driver_t audio_ax;
extern audio_driver_t audio_psp;
extern audio_driver_t audio_ps2;
extern audio_driver_t audio_ctr_csnd;
extern audio_driver_t audio_ctr_dsp;
#ifdef HAVE_THREADS
extern audio_driver_t audio_ctr_dsp_thread;
#endif
extern audio_driver_t audio_switch;
extern audio_driver_t audio_switch_thread;
extern audio_driver_t audio_switch_libnx_audren;
extern audio_driver_t audio_switch_libnx_audren_thread;
extern audio_driver_t audio_rwebaudio;
audio_driver_state_t *audio_state_get_ptr(void);
extern audio_driver_t *audio_drivers[];
RETRO_END_DECLS
#endif /* __AUDIO_DRIVER__H */
+32 -9
View File
@@ -21,6 +21,7 @@
#include <rthreads/rthreads.h>
#include "audio_thread_wrapper.h"
#include "audio_driver.h"
#include "../verbosity.h"
typedef struct audio_thread
@@ -50,6 +51,10 @@ typedef struct audio_thread
} audio_thread_t;
/**
* The thread that manages the life of the audio driver.
* The wrapped audio driver lives and dies with this function.
*/
static void audio_thread_loop(void *data)
{
audio_thread_t *thr = (audio_thread_t*)data;
@@ -112,6 +117,10 @@ static void audio_thread_loop(void *data)
thr->driver->free(thr->driver_data);
}
/**
* Lets the audio thread finish what it's doing,
* then stops it from doing further work.
*/
static void audio_thread_block(audio_thread_t *thr)
{
if (!thr)
@@ -132,15 +141,19 @@ static void audio_thread_block(audio_thread_t *thr)
slock_unlock(thr->lock);
}
/**
* Resumes the audio thread.
* This function is called from the main thread.
*/
static void audio_thread_unblock(audio_thread_t *thr)
{
if (!thr)
return;
slock_lock(thr->lock);
thr->stopped = false;
scond_signal(thr->cond);
slock_unlock(thr->lock);
slock_lock(thr->lock); /* Prevent the audio thread from touching this flag... */
thr->stopped = false; /* ...so that the main thread can do it. */
scond_signal(thr->cond); /* Then let the audio thread know that it's okay to resume. */
slock_unlock(thr->lock); /* "As you were." */
}
static void audio_thread_free(void *data)
@@ -152,13 +165,15 @@ static void audio_thread_free(void *data)
if (thr->thread)
{
slock_lock(thr->lock);
thr->stopped = false;
slock_lock(thr->lock); /* Let the audio thread finish what it's doing... */
thr->stopped = false; /* Then stop it. "You're fired." */
thr->alive = false;
scond_signal(thr->cond);
slock_unlock(thr->lock);
scond_signal(thr->cond); /* Let the thread know it's okay to continue */
slock_unlock(thr->lock); /* At this point, it will exit its loop. */
sthread_join(thr->thread);
/* Wait for the audio thread to exit, ensure that it's really dead.
* (It will call the wrapped driver's free() function.) */
}
if (thr->lock)
@@ -166,6 +181,7 @@ static void audio_thread_free(void *data)
if (thr->cond)
scond_free(thr->cond);
free(thr);
/* The audio driver is done, clean up the thread itself. */
}
static bool audio_thread_alive(void *data)
@@ -190,6 +206,9 @@ static bool audio_thread_stop(void *data)
if (!thr)
return false;
/* Don't immediately call stop on the driver;
* let the audio thread finish its current loop iteration.
* It will call stop then. */
audio_thread_block(thr);
thr->is_paused = true;
@@ -218,6 +237,8 @@ static void audio_thread_set_nonblock_state(void *data, bool state)
{
(void)data;
(void)state;
/* Ignored, because blocking state is irrelevant
* when audio is running on a separate thread. */
}
static bool audio_thread_use_float(void *data)
@@ -250,7 +271,7 @@ static ssize_t audio_thread_write(void *data, const void *buf, size_t size)
}
static const audio_driver_t audio_thread = {
NULL,
NULL, /* No need to wrap init, it's called at the start of the thread loop */
audio_thread_write,
audio_thread_stop,
audio_thread_start,
@@ -261,6 +282,8 @@ static const audio_driver_t audio_thread = {
"audio-thread",
NULL, /* No point in using rate control with threaded audio. */
NULL,
NULL,
NULL
};
/**
+1 -1
View File
@@ -19,7 +19,7 @@
#include <boolean.h>
#include "../retroarch.h"
#include "audio_driver.h"
/**
* audio_init_thread:
+482
View File
@@ -0,0 +1,482 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 Daniel De Matteis
* Copyright (C) 2023 Jesse Talavera-Greenberg
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include <lists/string_list.h>
#include <string/stdstring.h>
#include <alsa/asoundlib.h>
#include <asm-generic/errno.h>
#include "../audio_driver.h"
#include "../common/alsa.h"
#include "../../verbosity.h"
int alsa_init_pcm(snd_pcm_t **pcm,
const char* device,
snd_pcm_stream_t stream,
unsigned rate,
unsigned latency,
unsigned channels,
alsa_stream_info_t *stream_info,
unsigned *new_rate,
int mode)
{
snd_pcm_format_t format;
snd_pcm_uframes_t buffer_size;
snd_pcm_hw_params_t *params = NULL;
snd_pcm_sw_params_t *sw_params = NULL;
unsigned latency_usec = latency * 1000;
unsigned periods = 4;
unsigned orig_rate = rate;
const char *alsa_dev = device ? device : "default";
int errnum = 0;
RARCH_DBG("[ALSA]: Requesting device \"%s\" for %s stream\n", alsa_dev, snd_pcm_stream_name(stream));
if ((errnum = snd_pcm_open(pcm, alsa_dev, stream, mode)) < 0)
{
RARCH_ERR("[ALSA]: Failed to open %s stream on device \"%s\": %s\n",
snd_pcm_stream_name(stream),
alsa_dev,
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_hw_params_malloc(&params)) < 0)
{
RARCH_ERR("[ALSA]: Failed to allocate hardware parameters: %s\n",
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_hw_params_any(*pcm, params)) < 0)
{
RARCH_ERR("[ALSA]: Failed to query hardware parameters from %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
format = (snd_pcm_hw_params_test_format(*pcm, params, SND_PCM_FORMAT_FLOAT) == 0)
? SND_PCM_FORMAT_FLOAT : SND_PCM_FORMAT_S16;
stream_info->has_float = (format == SND_PCM_FORMAT_FLOAT);
RARCH_LOG("[ALSA]: Using %s sample format for %s device \"%s\"\n",
snd_pcm_format_name(format),
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm)
);
if ((errnum = snd_pcm_hw_params_set_access(*pcm, params, SND_PCM_ACCESS_RW_INTERLEAVED)) < 0)
{
RARCH_ERR("[ALSA]: Failed to set %s access for %s device \"%s\": %s\n",
snd_pcm_access_name(SND_PCM_ACCESS_RW_INTERLEAVED),
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
stream_info->frame_bits = snd_pcm_format_physical_width(format) * channels;
if ((errnum = snd_pcm_hw_params_set_format(*pcm, params, format)) < 0)
{
RARCH_ERR("[ALSA]: Failed to set %s format for %s device \"%s\": %s\n",
snd_pcm_format_name(format),
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_hw_params_set_channels(*pcm, params, channels)) < 0)
{
RARCH_ERR("[ALSA]: Failed to set %u-channel audio for %s device \"%s\": %s\n",
channels,
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
/* Don't allow rate resampling when probing for the default rate (but ignore if this call fails) */
if ((errnum = snd_pcm_hw_params_set_rate_resample(*pcm, params, false)) < 0)
{
RARCH_WARN("[ALSA]: Failed to request a default unsampled rate for %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
}
if ((errnum = snd_pcm_hw_params_set_rate_near(*pcm, params, &rate, 0)) < 0)
{
RARCH_ERR("[ALSA]: Failed to request a rate near %uHz for %s device \"%s\": %s\n",
rate,
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if (new_rate)
*new_rate = rate;
if ((snd_pcm_hw_params_set_buffer_time_near(*pcm, params, &latency_usec, NULL)) < 0)
{
RARCH_ERR("[ALSA]: Failed to request a buffer time near %uus for %s device \"%s\": %s\n",
latency_usec,
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_hw_params_set_periods_near(*pcm, params, &periods, NULL)) < 0)
{
RARCH_ERR("[ALSA]: Failed to request %u periods per buffer for %s device \"%s\": %s\n",
periods,
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_hw_params(*pcm, params)) < 0)
{ /* This calls snd_pcm_prepare() under the hood */
RARCH_ERR("[ALSA]: Failed to install hardware parameters for %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
/* Shouldn't have to bother with this,
* but some drivers are apparently broken. */
if ((errnum = snd_pcm_hw_params_get_period_size(params, &stream_info->period_frames, NULL)) < 0)
{
RARCH_WARN("[ALSA]: Failed to get an exact period size from %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
RARCH_WARN("[ALSA]: Trying the minimum period size instead\n");
if ((errnum = snd_pcm_hw_params_get_period_size_min(params, &stream_info->period_frames, NULL)) < 0)
{
RARCH_ERR("[ALSA]: Failed to get min period size from %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
}
stream_info->period_size = snd_pcm_frames_to_bytes(*pcm, stream_info->period_frames);
if (stream_info->period_size < 0)
{
RARCH_ERR("[ALSA]: Failed to convert a period size of %lu frames to bytes: %s\n",
stream_info->period_frames,
snd_strerror(stream_info->period_frames));
goto error;
}
RARCH_LOG("[ALSA]: Period: %u periods per buffer (%lu frames, %lu bytes)\n",
periods,
stream_info->period_frames,
stream_info->period_size);
if ((errnum = snd_pcm_hw_params_get_buffer_size(params, &buffer_size)) < 0)
{
RARCH_WARN("[ALSA]: Failed to get exact buffer size from %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
RARCH_WARN("[ALSA]: Trying the maximum buffer size instead\n");
if ((errnum = snd_pcm_hw_params_get_buffer_size_max(params, &buffer_size)) < 0)
{
RARCH_ERR("[ALSA]: Failed to get max buffer size from %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
}
stream_info->buffer_size = snd_pcm_frames_to_bytes(*pcm, buffer_size);
if (stream_info->buffer_size < 0)
{
RARCH_ERR("[ALSA]: Failed to convert a buffer size of %lu frames to bytes: %s\n",
buffer_size,
snd_strerror(buffer_size));
goto error;
}
RARCH_LOG("[ALSA]: Buffer size: %lu frames (%lu bytes)\n", buffer_size, stream_info->buffer_size);
stream_info->can_pause = snd_pcm_hw_params_can_pause(params);
RARCH_LOG("[ALSA]: Can pause: %s.\n", stream_info->can_pause ? "yes" : "no");
if ((errnum = snd_pcm_sw_params_malloc(&sw_params)) < 0)
{
RARCH_ERR("[ALSA]: Failed to allocate software parameters: %s\n",
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_sw_params_current(*pcm, sw_params)) < 0)
{
RARCH_ERR("[ALSA]: Failed to query current software parameters for %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_sw_params_set_start_threshold(*pcm, sw_params, buffer_size / 2)) < 0)
{
RARCH_ERR("[ALSA]: Failed to set start %lu-frame threshold for %s device \"%s\": %s\n",
buffer_size / 2,
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
if ((errnum = snd_pcm_sw_params(*pcm, sw_params)) < 0)
{
RARCH_ERR("[ALSA]: Failed to install software parameters for %s device \"%s\": %s\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm),
snd_strerror(errnum));
goto error;
}
snd_pcm_hw_params_free(params);
snd_pcm_sw_params_free(sw_params);
RARCH_LOG("[ALSA]: Initialized %s device \"%s\"\n",
snd_pcm_stream_name(stream),
snd_pcm_name(*pcm));
return 0;
error:
if (params)
snd_pcm_hw_params_free(params);
if (sw_params)
snd_pcm_sw_params_free(sw_params);
if (*pcm)
{
alsa_free_pcm(*pcm);
*pcm = NULL;
}
return errnum;
}
void alsa_free_pcm(snd_pcm_t *pcm)
{
if (pcm)
{
int errnum = 0;
if ((errnum = snd_pcm_drop(pcm)) < 0)
{
RARCH_WARN("[ALSA]: Failed to drop remaining samples in %s stream \"%s\": %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_strerror(errnum));
}
if ((errnum = snd_pcm_close(pcm)) < 0)
{
RARCH_WARN("[ALSA]: Failed to close %s stream \"%s\": %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_strerror(errnum));
}
}
}
bool alsa_start_pcm(snd_pcm_t *pcm)
{
int errnum = 0;
snd_pcm_state_t pcm_state;
if (!pcm)
return false;
pcm_state = snd_pcm_state(pcm);
switch (pcm_state)
{
case SND_PCM_STATE_PAUSED: /* If we're unpausing a valid (but paused) stream... */
if ((errnum = snd_pcm_pause(pcm, false)) < 0) /* ...but we failed... */
goto error;
break;
case SND_PCM_STATE_PREPARED:
/* If we're starting this stream for the first time... */
if ((errnum = snd_pcm_start(pcm)) < 0) /* ..but we failed... */
goto error;
break;
case SND_PCM_STATE_RUNNING:
RARCH_DBG("[ALSA]: %s stream \"%s\" is already running, no action needed.\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm));
return true;
default:
RARCH_ERR("[ALSA]: Failed to start %s stream \"%s\" in unexpected state %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state));
return false;
}
RARCH_DBG("[ALSA]: Started %s stream \"%s\", transitioning from %s to %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state),
snd_pcm_state_name(snd_pcm_state(pcm)));
return true;
error:
RARCH_ERR("[ALSA]: Failed to start %s stream \"%s\" in state %s: %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state),
snd_strerror(errnum));
return false;
}
bool alsa_stop_pcm(snd_pcm_t *pcm)
{
int errnum = 0;
snd_pcm_state_t pcm_state;
if (!pcm)
return false;
pcm_state = snd_pcm_state(pcm);
switch (pcm_state)
{
case SND_PCM_STATE_PAUSED:
RARCH_DBG("[ALSA]: %s stream \"%s\" is already paused, no action needed.\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm));
return true;
case SND_PCM_STATE_PREPARED:
RARCH_DBG("[ALSA]: %s stream \"%s\" is prepared but not running, no action needed.\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm));
return true;
case SND_PCM_STATE_RUNNING:
/* If we're pausing an active stream... */
if ((errnum = snd_pcm_pause(pcm, true)) < 0) /* ...but we failed... */
goto error;
break;
default:
RARCH_ERR("[ALSA]: Failed to stop %s stream \"%s\" in unexpected state %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state));
return false;
}
RARCH_DBG("[ALSA]: Stopped %s stream \"%s\", transitioning from %s to %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state),
snd_pcm_state_name(snd_pcm_state(pcm)));
return true;
error:
RARCH_ERR("[ALSA]: Failed to stop %s stream \"%s\" in state %s: %s\n",
snd_pcm_stream_name(snd_pcm_stream(pcm)),
snd_pcm_name(pcm),
snd_pcm_state_name(pcm_state),
snd_strerror(errnum));
return false;
}
struct string_list *alsa_device_list_type_new(const char* type)
{
void **hints, **n;
union string_list_elem_attr attr;
struct string_list *s = string_list_new();
if (!s)
return NULL;
attr.i = 0;
if (snd_device_name_hint(-1, "pcm", &hints) != 0)
{
string_list_free(s);
return NULL;
}
n = hints;
while (*n)
{
char *name = snd_device_name_get_hint(*n, "NAME");
char *io = snd_device_name_get_hint(*n, "IOID");
char *desc = snd_device_name_get_hint(*n, "DESC");
/* description of device IOID - input / output identifcation
* ("Input" or "Output"), NULL means both) */
if (!io || (string_is_equal(io, type)))
string_list_append(s, name, attr);
if (name)
free(name);
if (io)
free(io);
if (desc)
free(desc);
n++;
}
/* free hint buffer too */
snd_device_name_free_hint(hints);
return s;
}
+56
View File
@@ -0,0 +1,56 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2023 The RetroArch team
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _RETROARCH_ALSA
#define _RETROARCH_ALSA
#include <boolean.h>
#include "queues/fifo_queue.h"
#include "rthreads/rthreads.h"
/* Header file for common functions that are used by alsa and alsathread. */
/**
* Used for info that's common to all pcm devices
* that's relevant for our purposes.
*/
typedef struct alsa_stream_info
{
size_t buffer_size;
size_t period_size;
snd_pcm_uframes_t period_frames;
unsigned int frame_bits;
bool has_float;
bool can_pause;
} alsa_stream_info_t;
int alsa_init_pcm(snd_pcm_t **pcm,
const char* device,
snd_pcm_stream_t stream,
unsigned rate,
unsigned latency,
unsigned channels,
alsa_stream_info_t *stream_info,
unsigned *new_rate,
int mode);
void alsa_free_pcm(snd_pcm_t *pcm);
void *alsa_device_list_new(void *data);
struct string_list *alsa_device_list_type_new(const char* type);
void alsa_device_list_free(void *data, void *array_list_data);
bool alsa_start_pcm(snd_pcm_t *pcm);
bool alsa_stop_pcm(snd_pcm_t *pcm);
#endif /* _RETROARCH_ALSA */
+43
View File
@@ -0,0 +1,43 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 Daniel De Matteis
* Copyright (C) 2023 Jesse Talavera-Greenberg
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include "alsathread.h"
void alsa_thread_free_info_members(alsa_thread_info_t *info)
{
if (info)
{
if (info->worker_thread)
{
slock_lock(info->cond_lock);
info->thread_dead = true;
slock_unlock(info->cond_lock);
sthread_join(info->worker_thread);
}
if (info->buffer)
fifo_free(info->buffer);
if (info->cond)
scond_free(info->cond);
if (info->fifo_lock)
slock_free(info->fifo_lock);
if (info->cond_lock)
slock_free(info->cond_lock);
if (info->pcm)
alsa_free_pcm(info->pcm);
}
/* Do NOT free() info itself; it's embedded within another struct
* that will be freed. */
}
+40
View File
@@ -0,0 +1,40 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 Daniel De Matteis
* Copyright (C) 2023 Jesse Talavera-Greenberg
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef RETROARCH_ALSATHREAD_H
#define RETROARCH_ALSATHREAD_H
#include <alsa/asoundlib.h>
#include <boolean.h>
#include "queues/fifo_queue.h"
#include "rthreads/rthreads.h"
#include "./alsa.h"
typedef struct alsa_thread_info
{
snd_pcm_t *pcm;
fifo_buffer_t *buffer;
sthread_t *worker_thread;
slock_t *fifo_lock;
scond_t *cond;
slock_t *cond_lock;
alsa_stream_info_t stream_info;
volatile bool thread_dead;
} alsa_thread_info_t;
void alsa_thread_free_info_members(alsa_thread_info_t *info);
#endif
+37 -24
View File
@@ -21,20 +21,51 @@
#include "mmdevice_common.h"
#include "mmdevice_common_inline.h"
void *mmdevice_list_new(void *u)
char* mmdevice_name(IMMDevice *device)
{
HRESULT hr;
IPropertyStore *prop_store = NULL;
PROPVARIANT prop_var;
bool prop_var_init = false;
char* result = NULL;
if (!device)
return NULL;
hr = _IMMDevice_OpenPropertyStore(device, STGM_READ, &prop_store);
if (FAILED(hr))
return NULL;
PropVariantInit(&prop_var);
prop_var_init = true;
hr = _IPropertyStore_GetValue(prop_store, PKEY_Device_FriendlyName, &prop_var);
if (FAILED(hr))
goto done;
result = utf16_to_utf8_string_alloc(prop_var.pwszVal);
done:
if (prop_var_init)
PropVariantClear(&prop_var);
IFACE_RELEASE(prop_store);
return result;
}
void *mmdevice_list_new(const void *u, EDataFlow data_flow)
{
HRESULT hr;
UINT i;
PROPVARIANT prop_var;
union string_list_elem_attr attr;
IMMDeviceEnumerator *enumerator = NULL;
IMMDeviceCollection *collection = NULL;
UINT dev_count = 0;
IMMDevice *device = NULL;
LPWSTR dev_id_wstr = NULL;
IPropertyStore *prop_store = NULL;
bool br = false;
bool prop_var_init = false;
char *dev_id_str = NULL;
char *dev_name_str = NULL;
struct string_list *sl = string_list_new();
@@ -54,7 +85,7 @@ void *mmdevice_list_new(void *u)
goto error;
hr = _IMMDeviceEnumerator_EnumAudioEndpoints(enumerator,
eRender, DEVICE_STATE_ACTIVE, &collection);
data_flow, DEVICE_STATE_ACTIVE, &collection);
if (FAILED(hr))
goto error;
@@ -75,19 +106,7 @@ void *mmdevice_list_new(void *u)
if (!(dev_id_str = utf16_to_utf8_string_alloc(dev_id_wstr)))
goto error;
hr = _IMMDevice_OpenPropertyStore(device, STGM_READ, &prop_store);
if (FAILED(hr))
goto error;
PropVariantInit(&prop_var);
prop_var_init = true;
hr = _IPropertyStore_GetValue(
prop_store, PKEY_Device_FriendlyName,
&prop_var);
if (FAILED(hr))
goto error;
if (!(dev_name_str = utf16_to_utf8_string_alloc(prop_var.pwszVal)))
if (!(dev_name_str = mmdevice_name(device)))
goto error;
br = string_list_append(sl, dev_name_str, attr);
@@ -96,15 +115,12 @@ void *mmdevice_list_new(void *u)
if (dev_id_str)
sl->elems[sl->size-1].userdata = dev_id_str;
PropVariantClear(&prop_var);
prop_var_init = false;
if (dev_id_wstr)
CoTaskMemFree(dev_id_wstr);
if (dev_name_str)
free(dev_name_str);
dev_name_str = NULL;
dev_id_wstr = NULL;
IFACE_RELEASE(prop_store);
IFACE_RELEASE(device);
}
@@ -120,9 +136,6 @@ error:
free(dev_name_str);
dev_id_str = NULL;
dev_name_str = NULL;
if (prop_var_init)
PropVariantClear(&prop_var);
IFACE_RELEASE(prop_store);
if (dev_id_wstr)
CoTaskMemFree(dev_id_wstr);
dev_id_wstr = NULL;
+36 -27
View File
@@ -1,27 +1,36 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _MMDEVICE_COMMON_H
#define _MMDEVICE_COMMON_H
#include <stdlib.h>
RETRO_BEGIN_DECLS
void *mmdevice_list_new(void *u);
RETRO_END_DECLS
#endif
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 - Daniel De Matteis
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef _MMDEVICE_COMMON_H
#define _MMDEVICE_COMMON_H
#include <stdlib.h>
#include <retro_common_api.h>
#include "mmdevice_common_inline.h"
RETRO_BEGIN_DECLS
void *mmdevice_list_new(const void *u, EDataFlow data_flow);
/**
* Gets the friendly name of the provided IMMDevice.
* The string must be freed with free().
*/
char* mmdevice_name(IMMDevice *device);
RETRO_END_DECLS
#endif
+29
View File
@@ -18,11 +18,19 @@
#include <stdlib.h>
/* Fix for MSYS2 increasing _WIN32_WINNT to 0x0603*/
#if defined(__MINGW32__) || defined(__MINGW64__)
#ifdef _WIN32_WINNT
#undef _WIN32_WINNT
#endif
#define _WIN32_WINNT 0x0600
#define WIN32_LEAN_AND_MEAN
#else
typedef enum EDataFlow EDataFlow;
/* MinGW defines EDataFlow differently than MSVC does;
* this typedef smooths that over. */
#endif
#include <windows.h>
#include <winerror.h>
@@ -37,6 +45,7 @@
#ifdef _MSC_VER
DEFINE_GUID(IID_IAudioClient, 0x1CB9AD4C, 0xDBFA, 0x4C32, 0xB1, 0x78, 0xC2, 0xF5, 0x68, 0xA7, 0x03, 0xB2);
DEFINE_GUID(IID_IAudioRenderClient, 0xF294ACFC, 0x3146, 0x4483, 0xA7, 0xBF, 0xAD, 0xDC, 0xA7, 0xC2, 0x60, 0xE2);
DEFINE_GUID(IID_IAudioCaptureClient, 0xC8ADBD64, 0xE71E, 0x48A0, 0xA4, 0xDE, 0x18, 0x5C, 0x39, 0x5C, 0xD3, 0x17);
DEFINE_GUID(IID_IMMDeviceEnumerator, 0xA95664D2, 0x9614, 0x4F35, 0xA7, 0x46, 0xDE, 0x8D, 0xB6, 0x36, 0x17, 0xE6);
DEFINE_GUID(CLSID_MMDeviceEnumerator, 0xBCDE0395, 0xE52F, 0x467C, 0x8E, 0x3D, 0xC4, 0x57, 0x92, 0x91, 0x69, 0x2E);
#undef KSDATAFORMAT_SUBTYPE_IEEE_FLOAT
@@ -60,6 +69,10 @@ DEFINE_PROPERTYKEY(PKEY_Device_FriendlyName, 0xa45c254e, 0xdf1c, 0x4efd, 0x80, 0
#define _IAudioClient_GetBufferSize(This,pNumBufferFrames) ( (This)->GetBufferSize(pNumBufferFrames) )
#define _IAudioClient_GetStreamLatency(This,phnsLatency) ( (This)->GetStreamLatency(phnsLatency) )
#define _IAudioClient_GetDevicePeriod(This,phnsDefaultDevicePeriod,phnsMinimumDevicePeriod) ( (This)->GetDevicePeriod(phnsDefaultDevicePeriod,phnsMinimumDevicePeriod) )
#define _IAudioClient_Initialize(This,ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid) \
( (This)->Initialize(ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid))
#define _IAudioClient_IsFormatSupported(This,ShareMode,pFormat,ppClosestMatch) \
( (This)->IsFormatSupported(ShareMode,pFormat,ppClosestMatch))
#define _IMMDevice_Activate(This,iid,dwClsCtx,pActivationParams,ppv) ((This)->Activate(iid,(dwClsCtx),pActivationParams,ppv))
#define _IMMDeviceEnumerator_EnumAudioEndpoints(This,dataFlow,dwStateMask,ppDevices) (This)->EnumAudioEndpoints(dataFlow,dwStateMask,ppDevices)
#define _IMMDeviceEnumerator_GetDefaultAudioEndpoint(This,dataFlow,role,ppEndpoint) (This)->GetDefaultAudioEndpoint(dataFlow,role,ppEndpoint)
@@ -67,6 +80,12 @@ DEFINE_PROPERTYKEY(PKEY_Device_FriendlyName, 0xa45c254e, 0xdf1c, 0x4efd, 0x80, 0
#define _IMMDevice_GetId(This,ppstrId) ((This)->GetId(ppstrId))
#define _IPropertyStore_GetValue(This,key,pv) ( (This)->GetValue(key,pv) )
#define _IMMDeviceCollection_GetCount(This,cProps) ( (This)->GetCount(cProps) )
#define _IAudioCaptureClient_GetBuffer(This,ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition) \
( (This) -> GetBuffer(ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition) )
#define _IAudioCaptureClient_ReleaseBuffer(This,NumFramesRead) \
( (This) -> ReleaseBuffer(NumFramesRead) )
#define _IAudioCaptureClient_GetNextPacketSize(This,pNumFramesInNextPacket) \
( (This) -> GetNextPacketSize(pNumFramesInNextPacket) )
#else
#define _IMMDeviceCollection_Item(This,nDevice,ppdevice) (This)->lpVtbl->Item(This,nDevice,ppdevice)
#define _IAudioClient_Start(This) ( (This)->lpVtbl -> Start(This) )
@@ -82,6 +101,10 @@ DEFINE_PROPERTYKEY(PKEY_Device_FriendlyName, 0xa45c254e, 0xdf1c, 0x4efd, 0x80, 0
#define _IAudioClient_GetBufferSize(This,pNumBufferFrames) ( (This)->lpVtbl -> GetBufferSize(This,pNumBufferFrames) )
#define _IAudioClient_GetStreamLatency(This,phnsLatency) ( (This)->lpVtbl -> GetStreamLatency(This,phnsLatency) )
#define _IAudioClient_GetDevicePeriod(This,phnsDefaultDevicePeriod,phnsMinimumDevicePeriod) ( (This)->lpVtbl -> GetDevicePeriod(This,phnsDefaultDevicePeriod,phnsMinimumDevicePeriod) )
#define _IAudioClient_Initialize(This,ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid) \
( (This)->lpVtbl->Initialize(This,ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid))
#define _IAudioClient_IsFormatSupported(This,ShareMode,pFormat,ppClosestMatch) \
( (This)->lpVtbl->IsFormatSupported(This,ShareMode,pFormat,ppClosestMatch))
#define _IMMDevice_Activate(This,iid,dwClsCtx,pActivationParams,ppv) ((This)->lpVtbl->Activate(This,&(iid),dwClsCtx,pActivationParams,ppv))
#define _IMMDeviceEnumerator_EnumAudioEndpoints(This,dataFlow,dwStateMask,ppDevices) (This)->lpVtbl->EnumAudioEndpoints(This,dataFlow,dwStateMask,ppDevices)
#define _IMMDeviceEnumerator_GetDefaultAudioEndpoint(This,dataFlow,role,ppEndpoint) (This)->lpVtbl->GetDefaultAudioEndpoint(This,dataFlow,role,ppEndpoint)
@@ -89,6 +112,12 @@ DEFINE_PROPERTYKEY(PKEY_Device_FriendlyName, 0xa45c254e, 0xdf1c, 0x4efd, 0x80, 0
#define _IMMDevice_GetId(This,ppstrId) (This)->lpVtbl->GetId(This,ppstrId)
#define _IPropertyStore_GetValue(This,key,pv) ( (This)->lpVtbl -> GetValue(This,&(key),pv) )
#define _IMMDeviceCollection_GetCount(This,cProps) ( (This)->lpVtbl -> GetCount(This,cProps) )
#define _IAudioCaptureClient_GetBuffer(This,ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition) \
( (This)->lpVtbl -> GetBuffer(This,ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition) )
#define _IAudioCaptureClient_ReleaseBuffer(This,NumFramesRead) \
( (This)->lpVtbl -> ReleaseBuffer(This,NumFramesRead) )
#define _IAudioCaptureClient_GetNextPacketSize(This,pNumFramesInNextPacket) \
( (This)-> lpVtbl -> GetNextPacketSize(This,pNumFramesInNextPacket) )
#endif
#ifdef __cplusplus
+725
View File
@@ -0,0 +1,725 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 Daniel De Matteis
* Copyright (C) 2023 Jesse Talavera-Greenberg
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include "wasapi.h"
#include <stdio.h>
#ifdef HAVE_MICROPHONE
#include "audio/microphone_driver.h"
#endif
#include "queues/fifo_queue.h"
#include "lists/string_list.h"
#include "configuration.h"
#include "verbosity.h"
#include "string/stdstring.h"
#include "mmdevice_common.h"
const char *hresult_name(HRESULT hr)
{
switch (hr)
{
/* Standard error codes */
case E_INVALIDARG:
return "E_INVALIDARG";
case E_NOINTERFACE:
return "E_NOINTERFACE";
case E_OUTOFMEMORY:
return "E_OUTOFMEMORY";
case E_POINTER:
return "E_POINTER";
/* Standard success codes */
case S_FALSE:
return "S_FALSE";
case S_OK:
return "S_OK";
/* AUDCLNT error codes */
case AUDCLNT_E_ALREADY_INITIALIZED:
return "AUDCLNT_E_ALREADY_INITIALIZED";
case AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL:
return "AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL";
case AUDCLNT_E_BUFFER_ERROR:
return "AUDCLNT_E_BUFFER_ERROR";
case AUDCLNT_E_BUFFER_OPERATION_PENDING:
return "AUDCLNT_E_BUFFER_OPERATION_PENDING";
case AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED:
return "AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED";
case AUDCLNT_E_BUFFER_SIZE_ERROR:
return "AUDCLNT_E_BUFFER_SIZE_ERROR";
case AUDCLNT_E_CPUUSAGE_EXCEEDED:
return "AUDCLNT_E_CPUUSAGE_EXCEEDED";
case AUDCLNT_E_DEVICE_IN_USE:
return "AUDCLNT_E_DEVICE_IN_USE";
case AUDCLNT_E_DEVICE_INVALIDATED:
return "AUDCLNT_E_DEVICE_INVALIDATED";
case AUDCLNT_E_ENDPOINT_CREATE_FAILED:
return "AUDCLNT_E_ENDPOINT_CREATE_FAILED";
case AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED:
return "AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED";
case AUDCLNT_E_INVALID_DEVICE_PERIOD:
return "AUDCLNT_E_INVALID_DEVICE_PERIOD";
case AUDCLNT_E_INVALID_SIZE:
return "AUDCLNT_E_INVALID_SIZE";
case AUDCLNT_E_NOT_INITIALIZED:
return "AUDCLNT_E_NOT_INITIALIZED";
case AUDCLNT_E_OUT_OF_ORDER:
return "AUDCLNT_E_OUT_OF_ORDER";
case AUDCLNT_E_SERVICE_NOT_RUNNING:
return "AUDCLNT_E_SERVICE_NOT_RUNNING";
case AUDCLNT_E_UNSUPPORTED_FORMAT:
return "AUDCLNT_E_UNSUPPORTED_FORMAT";
case AUDCLNT_E_WRONG_ENDPOINT_TYPE:
return "AUDCLNT_E_WRONG_ENDPOINT_TYPE";
/* AUDCLNT success codes */
case AUDCLNT_S_BUFFER_EMPTY:
return "AUDCLNT_S_BUFFER_EMPTY";
/* Something else; probably from an API that we started using
* after mic support was implemented */
default:
break;
}
return "<unknown>";
}
const char *wave_subtype_name(const GUID *guid)
{
if (IsEqualGUID(guid, &KSDATAFORMAT_SUBTYPE_IEEE_FLOAT))
return "KSDATAFORMAT_SUBTYPE_IEEE_FLOAT";
return "<unknown sub-format>";
}
const char *wave_format_name(const WAVEFORMATEXTENSIBLE *format)
{
switch (format->Format.wFormatTag)
{
case WAVE_FORMAT_PCM:
return "WAVE_FORMAT_PCM";
case WAVE_FORMAT_EXTENSIBLE:
return wave_subtype_name(&format->SubFormat);
default:
break;
}
return "<unknown>";
}
const char* wasapi_error(DWORD error)
{
static char error_message[256];
FormatMessage(
FORMAT_MESSAGE_IGNORE_INSERTS
| FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
error,
MAKELANGID(LANG_ENGLISH, SUBLANG_DEFAULT),
error_message,
sizeof(error_message) - 1,
NULL);
return error_message;
}
static const char* wasapi_data_flow_name(EDataFlow data_flow)
{
switch (data_flow)
{
case eCapture:
return "eCapture";
case eRender:
return "eRender";
case eAll:
return "eAll";
default:
break;
}
return "<unknown>";
}
static void wasapi_set_format(WAVEFORMATEXTENSIBLE *wf,
bool float_fmt, unsigned rate, unsigned channels)
{
WORD wBitsPerSample = float_fmt ? 32 : 16;
WORD nBlockAlign = (channels * wBitsPerSample) / 8;
DWORD nAvgBytesPerSec = rate * nBlockAlign;
wf->Format.nChannels = channels;
wf->Format.nSamplesPerSec = rate;
wf->Format.nAvgBytesPerSec = nAvgBytesPerSec;
wf->Format.nBlockAlign = nBlockAlign;
wf->Format.wBitsPerSample = wBitsPerSample;
if (float_fmt)
{
wf->Format.wFormatTag = WAVE_FORMAT_EXTENSIBLE;
wf->Format.cbSize = sizeof(WORD) + sizeof(DWORD) + sizeof(GUID);
wf->Samples.wValidBitsPerSample = wBitsPerSample;
wf->dwChannelMask = channels == 1 ? KSAUDIO_SPEAKER_MONO : KSAUDIO_SPEAKER_STEREO;
wf->SubFormat = KSDATAFORMAT_SUBTYPE_IEEE_FLOAT;
}
else
{
wf->Format.wFormatTag = WAVE_FORMAT_PCM;
wf->Format.cbSize = 0;
wf->Samples.wValidBitsPerSample = 0;
wf->dwChannelMask = 0;
memset(&wf->SubFormat, 0, sizeof(wf->SubFormat));
}
}
/**
* @param[in] format The format to check.
* @return \c true if \c format is suitable for RetroArch.
*/
static bool wasapi_is_format_suitable(const WAVEFORMATEXTENSIBLE *format)
{
/* RetroArch only supports mono mic input and stereo speaker output */
if (!format || format->Format.nChannels == 0 || format->Format.nChannels > 2)
return false;
switch (format->Format.wFormatTag)
{
case WAVE_FORMAT_PCM:
if (format->Format.wBitsPerSample != 16)
/* Integer samples must be 16-bit */
return false;
break;
case WAVE_FORMAT_EXTENSIBLE:
if (!IsEqualGUID(&format->SubFormat, &KSDATAFORMAT_SUBTYPE_IEEE_FLOAT))
/* RetroArch doesn't support any other subformat */
return false;
if (format->Format.wBitsPerSample != 32)
/* floating-point samples must be 32-bit */
return false;
break;
default:
/* Other formats are unsupported */
return false;
}
return true;
}
/**
* Selects a sample format suitable for the given device.
* @param[in,out] format The place where the chosen format will be written,
* as well as the first format checked.
* @param[in] client The audio client (i.e. device handle) for which a format will be selected.
* @param[in] mode The device mode (shared or exclusive) that \c client will use.
* @param[in] channels The number of channels that will constitute one audio frame.
* @return \c true if successful, \c false if a suitable format wasn't found or there was an error.
* If \c true, the selected format will be written to \c format.
* If \c false, the value referred by \c format will be unchanged.
*/
static bool wasapi_select_device_format(WAVEFORMATEXTENSIBLE *format, IAudioClient *client, AUDCLNT_SHAREMODE mode, unsigned channels)
{
static const unsigned preferred_rates[] = { 48000, 44100, 96000, 192000, 32000 };
const bool preferred_formats[] = {format->Format.wFormatTag == WAVE_FORMAT_EXTENSIBLE, format->Format.wFormatTag != WAVE_FORMAT_EXTENSIBLE};
/* Try the requested sample format first, then try the other one. */
WAVEFORMATEXTENSIBLE *suggested_format = NULL;
bool result = false;
HRESULT hr = _IAudioClient_IsFormatSupported(
client, mode,
(const WAVEFORMATEX *)format,
(WAVEFORMATEX **)&suggested_format);
/* The Windows docs say that casting these arguments to WAVEFORMATEX* is okay. */
switch (hr)
{
case S_OK:
/* The requested format is okay without any changes. */
result = true;
break;
case S_FALSE:
/* The requested format is unsupported, but Windows has suggested a similar one. */
RARCH_DBG("[WASAPI]: Windows suggests a format of (%s, %u-channel, %uHz).\n",
wave_format_name(suggested_format), suggested_format->Format.nChannels, suggested_format->Format.nSamplesPerSec);
if (wasapi_is_format_suitable(suggested_format))
{
*format = *suggested_format;
result = true;
}
else
{
result = false;
RARCH_ERR("[WASAPI]: Windows suggested a format, but RetroArch can't use it.\n");
}
break;
case AUDCLNT_E_UNSUPPORTED_FORMAT:
{
/* The requested format is unsupported
* and Windows was unable to suggest another.
* Usually happens with exclusive mode.
* RetroArch will try selecting a format. */
size_t i, j;
WAVEFORMATEXTENSIBLE possible_format;
HRESULT format_check_hr;
RARCH_WARN("[WASAPI]: Requested format not supported, and Windows could not suggest one. RetroArch will do so.\n");
for (i = 0; i < ARRAY_SIZE(preferred_formats); ++i)
{
for (j = 0; j < ARRAY_SIZE(preferred_rates); ++j)
{
wasapi_set_format(&possible_format, preferred_formats[i], preferred_rates[j], channels);
format_check_hr = _IAudioClient_IsFormatSupported(client, mode, (const WAVEFORMATEX *) &possible_format, NULL);
if (SUCCEEDED(format_check_hr))
{
*format = possible_format;
result = true;
RARCH_DBG("[WASAPI]: RetroArch suggests a format of (%s, %u-channel, %uHz).\n",
wave_format_name(format), format->Format.nChannels, format->Format.nSamplesPerSec);
goto done;
}
}
}
RARCH_ERR("[WASAPI]: Failed to select client format: No suitable format available.\n");
result = false;
break;
}
default:
/* Something else went wrong. */
RARCH_ERR("[WASAPI]: Failed to select client format: %s.\n", hresult_name(hr));
result = false;
break;
}
done:
/* IAudioClient::IsFormatSupported allocates a format object. */
if (suggested_format)
CoTaskMemFree(suggested_format);
return result;
}
static IAudioClient *wasapi_init_client_ex(IMMDevice *device,
bool *float_fmt, unsigned *rate, unsigned latency, unsigned channels)
{
WAVEFORMATEXTENSIBLE wf;
IAudioClient *client = NULL;
REFERENCE_TIME minimum_period = 0;
REFERENCE_TIME buffer_duration = 0;
UINT32 buffer_length = 0;
HRESULT hr = _IMMDevice_Activate(device,
IID_IAudioClient, CLSCTX_ALL, NULL, (void**)&client);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IMMDevice::Activate failed: %s.\n", hresult_name(hr));
return NULL;
}
hr = _IAudioClient_GetDevicePeriod(client, NULL, &minimum_period);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to get minimum device period of exclusive client: %s.\n", hresult_name(hr));
goto error;
}
/* Buffer_duration is in 100ns units. */
buffer_duration = latency * 10000.0;
if (buffer_duration < minimum_period)
buffer_duration = minimum_period;
wasapi_set_format(&wf, *float_fmt, *rate, channels);
RARCH_DBG("[WASAPI]: Requesting exclusive %u-bit %u-channel client with %s samples at %uHz %ums.\n",
wf.Format.wBitsPerSample,
wf.Format.nChannels, wave_format_name(&wf), wf.Format.nSamplesPerSec, latency);
if (!wasapi_select_device_format(&wf, client, AUDCLNT_SHAREMODE_EXCLUSIVE, channels))
{
RARCH_ERR("[WASAPI]: Failed to select a suitable device format.\n");
goto error;
}
hr = _IAudioClient_Initialize(client, AUDCLNT_SHAREMODE_EXCLUSIVE,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK | AUDCLNT_STREAMFLAGS_NOPERSIST,
buffer_duration, buffer_duration, (WAVEFORMATEX*)&wf, NULL);
if (hr == AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED)
{
RARCH_WARN("[WASAPI]: Unaligned buffer size: %s.\n", hresult_name(hr));
hr = _IAudioClient_GetBufferSize(client, &buffer_length);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to get buffer size of client: %s.\n", hresult_name(hr));
goto error;
}
IFACE_RELEASE(client);
hr = _IMMDevice_Activate(device,
IID_IAudioClient,
CLSCTX_ALL, NULL, (void**)&client);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IMMDevice::Activate failed: %s.\n", hresult_name(hr));
return NULL;
}
buffer_duration = 10000.0 * 1000.0 / (*rate) * buffer_length + 0.5;
hr = _IAudioClient_Initialize(client, AUDCLNT_SHAREMODE_EXCLUSIVE,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK | AUDCLNT_STREAMFLAGS_NOPERSIST,
buffer_duration, buffer_duration, (WAVEFORMATEX*)&wf, NULL);
}
if (hr == AUDCLNT_E_ALREADY_INITIALIZED)
{
IFACE_RELEASE(client);
hr = _IMMDevice_Activate(device,
IID_IAudioClient,
CLSCTX_ALL, NULL, (void**)&client);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI] IMMDevice::Activate failed: %s.\n", hresult_name(hr));
return NULL;
}
hr = _IAudioClient_Initialize(client, AUDCLNT_SHAREMODE_EXCLUSIVE,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK | AUDCLNT_STREAMFLAGS_NOPERSIST,
buffer_duration, buffer_duration, (WAVEFORMATEX*)&wf, NULL);
}
if (hr != AUDCLNT_E_UNSUPPORTED_FORMAT)
{
if (hr == AUDCLNT_E_DEVICE_IN_USE)
goto error;
if (hr == AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED)
goto error;
}
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IAudioClient::Initialize failed: %s.\n", hresult_name(hr));
goto error;
}
*float_fmt = wf.Format.wFormatTag != WAVE_FORMAT_PCM;
*rate = wf.Format.nSamplesPerSec;
return client;
error:
IFACE_RELEASE(client);
return NULL;
}
static IAudioClient *wasapi_init_client_sh(IMMDevice *device,
bool *float_fmt, unsigned *rate, unsigned latency, unsigned channels)
{
WAVEFORMATEXTENSIBLE wf;
IAudioClient *client = NULL;
settings_t *settings = config_get_ptr();
unsigned sh_buffer_length = settings->uints.audio_wasapi_sh_buffer_length;
REFERENCE_TIME default_period = 0;
REFERENCE_TIME buffer_duration = 0;
HRESULT hr = _IMMDevice_Activate(device,
IID_IAudioClient, CLSCTX_ALL, NULL, (void**)&client);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IMMDevice::Activate failed: %s.\n", hresult_name(hr));
return NULL;
}
hr = _IAudioClient_GetDevicePeriod(client, &default_period, NULL);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to get default device period of shared client: %s.\n", hresult_name(hr));
goto error;
}
/* Use audio latency setting for buffer size if allowed */
if ( sh_buffer_length < WASAPI_SH_BUFFER_DEVICE_PERIOD
|| sh_buffer_length > WASAPI_SH_BUFFER_CLIENT_BUFFER)
{
/* Buffer_duration is in 100ns units. */
buffer_duration = latency * 10000.0;
if (buffer_duration < default_period)
buffer_duration = default_period;
}
wasapi_set_format(&wf, *float_fmt, *rate, channels);
RARCH_DBG("[WASAPI]: Requesting shared %u-bit %u-channel client with %s samples at %uHz %ums.\n",
wf.Format.wBitsPerSample,
wf.Format.nChannels, wave_format_name(&wf), wf.Format.nSamplesPerSec, latency);
if (!wasapi_select_device_format(&wf, client, AUDCLNT_SHAREMODE_SHARED, channels))
{
RARCH_ERR("[WASAPI]: Failed to select a suitable device format.\n");
goto error;
}
hr = _IAudioClient_Initialize(client, AUDCLNT_SHAREMODE_SHARED,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK,
buffer_duration, 0, (WAVEFORMATEX*)&wf, NULL);
if (hr == AUDCLNT_E_ALREADY_INITIALIZED)
{
IFACE_RELEASE(client);
hr = _IMMDevice_Activate(device,
IID_IAudioClient,
CLSCTX_ALL, NULL, (void**)&client);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IMMDevice::Activate failed: %s.\n", hresult_name(hr));
return NULL;
}
hr = _IAudioClient_Initialize(client, AUDCLNT_SHAREMODE_SHARED,
AUDCLNT_STREAMFLAGS_EVENTCALLBACK,
buffer_duration, 0, (WAVEFORMATEX*)&wf, NULL);
}
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: IAudioClient::Initialize failed: %s.\n", hresult_name(hr));
goto error;
}
*float_fmt = wf.Format.wFormatTag != WAVE_FORMAT_PCM;
*rate = wf.Format.nSamplesPerSec;
return client;
error:
IFACE_RELEASE(client);
return NULL;
}
IMMDevice *wasapi_init_device(const char *id, EDataFlow data_flow)
{
HRESULT hr;
UINT32 dev_count, i;
IMMDeviceEnumerator *enumerator = NULL;
IMMDevice *device = NULL;
IMMDeviceCollection *collection = NULL;
const char *data_flow_name = wasapi_data_flow_name(data_flow);
if (id)
RARCH_DBG("[WASAPI]: Initializing %s device \"%s\"..\n", data_flow_name, id);
else
RARCH_DBG("[WASAPI]: Initializing default %s device..\n", data_flow_name);
#ifdef __cplusplus
hr = CoCreateInstance(CLSID_MMDeviceEnumerator, NULL, CLSCTX_ALL,
IID_IMMDeviceEnumerator, (void **)&enumerator);
#else
hr = CoCreateInstance(&CLSID_MMDeviceEnumerator, NULL, CLSCTX_ALL,
&IID_IMMDeviceEnumerator, (void **)&enumerator);
#endif
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to create device enumerator: %s.\n", hresult_name(hr));
goto error;
}
if (id)
{
/* If a specific device was requested... */
int32_t idx_found = -1;
struct string_list *list = (struct string_list*)mmdevice_list_new(NULL, data_flow);
if (!list)
{
RARCH_ERR("[WASAPI]: Failed to allocate %s device list.\n", data_flow_name);
goto error;
}
if (list->elems)
{
/* If any devices were found... */
unsigned d;
for (d = 0; d < list->size; d++)
{
if (string_is_equal(id, list->elems[d].data))
{
RARCH_DBG("[WASAPI]: Found device #%d: \"%s\".\n", d, list->elems[d].data);
idx_found = d;
break;
}
}
/* Index was not found yet based on name string,
* just assume id is a one-character number index. */
if (idx_found == -1 && isdigit(id[0]))
{
idx_found = strtoul(id, NULL, 0);
RARCH_LOG("[WASAPI]: Fallback, %s device index is a single number index instead: %u.\n", data_flow_name, idx_found);
}
}
string_list_free(list);
if (idx_found == -1)
idx_found = 0;
hr = _IMMDeviceEnumerator_EnumAudioEndpoints(enumerator,
data_flow, DEVICE_STATE_ACTIVE, &collection);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to enumerate audio endpoints: %s.\n", hresult_name(hr));
goto error;
}
hr = _IMMDeviceCollection_GetCount(collection, &dev_count);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to count IMMDevices: %s.\n", hresult_name(hr));
goto error;
}
for (i = 0; i < dev_count; ++i)
{
hr = _IMMDeviceCollection_Item(collection, i, &device);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to get IMMDevice #%d: %s.\n", i, hresult_name(hr));
goto error;
}
if (i == (UINT32)idx_found)
break;
IFACE_RELEASE(device);
}
}
else
{
hr = _IMMDeviceEnumerator_GetDefaultAudioEndpoint(
enumerator, data_flow, eConsole, &device);
if (FAILED(hr))
{
RARCH_ERR("[WASAPI]: Failed to get default audio endpoint: %s.\n", hresult_name(hr));
goto error;
}
}
if (!device)
goto error;
IFACE_RELEASE(collection);
IFACE_RELEASE(enumerator);
return device;
error:
IFACE_RELEASE(collection);
IFACE_RELEASE(enumerator);
if (id)
RARCH_WARN("[WASAPI]: Failed to initialize %s device \"%s\".\n", data_flow_name, id);
else
RARCH_ERR("[WASAPI]: Failed to initialize default %s device.\n", data_flow_name);
return NULL;
}
IAudioClient *wasapi_init_client(IMMDevice *device, bool *exclusive,
bool *float_fmt, unsigned *rate, unsigned latency, unsigned channels)
{
HRESULT hr;
IAudioClient *client;
float latency_res;
REFERENCE_TIME device_period = 0;
REFERENCE_TIME device_period_min = 0;
REFERENCE_TIME stream_latency = 0;
UINT32 buffer_length = 0;
if (*exclusive)
{
client = wasapi_init_client_ex(device, float_fmt, rate, latency, channels);
if (!client)
{
RARCH_WARN("[WASAPI]: Failed to initialize exclusive client, attempting shared client.\n");
client = wasapi_init_client_sh(device, float_fmt, rate, latency, channels);
if (client)
*exclusive = false;
}
}
else
{
client = wasapi_init_client_sh(device, float_fmt, rate, latency, channels);
if (!client)
{
RARCH_WARN("[WASAPI]: Failed to initialize shared client, attempting exclusive client.\n");
client = wasapi_init_client_ex(device, float_fmt, rate, latency, channels);
if (client)
*exclusive = true;
}
}
if (!client)
return NULL;
/* Remaining calls are for logging purposes. */
hr = _IAudioClient_GetDevicePeriod(client, &device_period, &device_period_min);
if (SUCCEEDED(hr))
{
RARCH_DBG("[WASAPI]: Default device period is %.1fms.\n", (float)device_period * 100 / 1e6);
RARCH_DBG("[WASAPI]: Minimum device period is %.1fms.\n", (float)device_period_min * 100 / 1e6);
}
else
RARCH_WARN("[WASAPI]: IAudioClient::GetDevicePeriod failed: %s.\n", hresult_name(hr));
if (!*exclusive)
{
hr = _IAudioClient_GetStreamLatency(client, &stream_latency);
if (SUCCEEDED(hr))
RARCH_DBG("[WASAPI]: Shared stream latency is %.1fms.\n", (float)stream_latency * 100 / 1e6);
else
RARCH_WARN("[WASAPI]: IAudioClient::GetStreamLatency failed: %s.\n", hresult_name(hr));
}
hr = _IAudioClient_GetBufferSize(client, &buffer_length);
if (SUCCEEDED(hr))
{
size_t num_samples = buffer_length * channels;
size_t num_bytes = num_samples * (*float_fmt ? sizeof(float) : sizeof(int16_t));
RARCH_DBG("[WASAPI]: Endpoint buffer size is %u frames (%u samples, %u bytes, %.1f ms).\n",
buffer_length, num_samples, num_bytes, (float)buffer_length * 1000.0 / *rate);
}
else
RARCH_WARN("[WASAPI]: IAudioClient::GetBufferSize failed: %s.\n", hresult_name(hr));
if (*exclusive)
latency_res = (float)buffer_length * 1000.0 / (*rate);
else
{
settings_t *settings = config_get_ptr();
unsigned sh_buffer_length = settings->uints.audio_wasapi_sh_buffer_length;
switch (sh_buffer_length)
{
case WASAPI_SH_BUFFER_AUDIO_LATENCY:
case WASAPI_SH_BUFFER_CLIENT_BUFFER:
latency_res = (float)buffer_length * 1000.0 / (*rate);
break;
case WASAPI_SH_BUFFER_DEVICE_PERIOD:
latency_res = (float)(stream_latency + device_period) / 10000.0;
break;
default:
latency_res = (float)sh_buffer_length * 1000.0 / (*rate);
break;
}
}
RARCH_LOG("[WASAPI]: Client initialized (%s, %s, %uHz, %.1fms).\n",
*exclusive ? "exclusive" : "shared",
*float_fmt ? "FLOAT" : "PCM",
*rate, latency_res);
return client;
}
+40
View File
@@ -0,0 +1,40 @@
/* RetroArch - A frontend for libretro.
* Copyright (C) 2011-2017 Daniel De Matteis
* Copyright (C) 2023 Jesse Talavera-Greenberg
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/
/**
* Contains WASAPI-specific support functions that are used
* by the WASAPI audio and microphone drivers.
*
*/
#ifndef RETROARCH_COMMON_WASAPI_H
#define RETROARCH_COMMON_WASAPI_H
#include "../common/mmdevice_common_inline.h"
#include "boolean.h"
/* Shared buffer size replacement placeholders */
#define WASAPI_SH_BUFFER_AUDIO_LATENCY 0
#define WASAPI_SH_BUFFER_DEVICE_PERIOD 32
#define WASAPI_SH_BUFFER_CLIENT_BUFFER 64
const char *hresult_name(HRESULT hr);
const char* wasapi_error(DWORD error);
IMMDevice *wasapi_init_device(const char *id, EDataFlow data_flow);
IAudioClient *wasapi_init_client(IMMDevice *device, bool *exclusive,
bool *float_fmt, unsigned *rate, unsigned latency, unsigned channels);
#endif /* RETROARCH_COMMON_WASAPI_H */
+28 -182
View File
@@ -20,160 +20,53 @@
#include <string/stdstring.h>
#include <alsa/asoundlib.h>
#include <asm-generic/errno.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../common/alsa.h"
#include "../../verbosity.h"
typedef struct alsa
{
snd_pcm_t *pcm;
size_t buffer_size;
unsigned int frame_bits;
alsa_stream_info_t stream_info;
bool nonblock;
bool has_float;
bool can_pause;
bool is_paused;
} alsa_t;
static bool alsa_use_float(void *data)
{
alsa_t *alsa = (alsa_t*)data;
return alsa->has_float;
}
static bool find_float_format(snd_pcm_t *pcm, void *data)
{
snd_pcm_hw_params_t *params = (snd_pcm_hw_params_t*)data;
if (snd_pcm_hw_params_test_format(pcm, params, SND_PCM_FORMAT_FLOAT) == 0)
{
RARCH_LOG("[ALSA]: Using floating point format.\n");
return true;
}
RARCH_LOG("[ALSA]: Using signed 16-bit format.\n");
return false;
return alsa->stream_info.has_float;
}
static void alsa_free(void *data);
static void *alsa_init(const char *device, unsigned rate, unsigned latency,
unsigned block_frames,
unsigned *new_rate)
{
snd_pcm_format_t format;
snd_pcm_uframes_t buffer_size;
snd_pcm_hw_params_t *params = NULL;
snd_pcm_sw_params_t *sw_params = NULL;
unsigned latency_usec = latency * 1000;
unsigned channels = 2;
unsigned periods = 4;
unsigned orig_rate = rate;
const char *alsa_dev = "default";
alsa_t *alsa = (alsa_t*)calloc(1, sizeof(alsa_t));
alsa_t *alsa = (alsa_t*)calloc(1, sizeof(alsa_t));
if (!alsa)
{
RARCH_ERR("[ALSA]: Failed to allocate driver context\n");
return NULL;
}
if (device)
alsa_dev = device;
RARCH_LOG("[ALSA]: Using ALSA version %s\n", snd_asoundlib_version());
if (snd_pcm_open(
&alsa->pcm, alsa_dev, SND_PCM_STREAM_PLAYBACK, SND_PCM_NONBLOCK) < 0)
if (alsa_init_pcm(&alsa->pcm, device, SND_PCM_STREAM_PLAYBACK, rate, latency, 2, &alsa->stream_info, new_rate, SND_PCM_NONBLOCK) < 0)
{
goto error;
if (snd_pcm_hw_params_malloc(&params) < 0)
goto error;
if (snd_pcm_hw_params_any(alsa->pcm, params) < 0)
goto error;
alsa->has_float = find_float_format(alsa->pcm, params);
format = alsa->has_float ? SND_PCM_FORMAT_FLOAT : SND_PCM_FORMAT_S16;
if (snd_pcm_hw_params_set_access(
alsa->pcm, params, SND_PCM_ACCESS_RW_INTERLEAVED) < 0)
goto error;
/* channels hardcoded to 2 for now */
alsa->frame_bits = snd_pcm_format_physical_width(format) * 2;
if (snd_pcm_hw_params_set_format(alsa->pcm, params, format) < 0)
goto error;
if (snd_pcm_hw_params_set_channels(alsa->pcm, params, channels) < 0)
goto error;
/* Don't allow rate resampling when probing for the default rate (but ignore if this call fails) */
snd_pcm_hw_params_set_rate_resample(alsa->pcm, params, 0 );
if (snd_pcm_hw_params_set_rate_near(alsa->pcm, params, &rate, 0) < 0)
goto error;
if (rate != orig_rate)
*new_rate = rate;
if (snd_pcm_hw_params_set_buffer_time_near(
alsa->pcm, params, &latency_usec, NULL) < 0)
goto error;
if (snd_pcm_hw_params_set_periods_near(
alsa->pcm, params, &periods, NULL) < 0)
goto error;
if (snd_pcm_hw_params(alsa->pcm, params) < 0)
goto error;
/* Shouldn't have to bother with this,
* but some drivers are apparently broken. */
if (snd_pcm_hw_params_get_period_size(params, &buffer_size, NULL))
snd_pcm_hw_params_get_period_size_min(params, &buffer_size, NULL);
RARCH_LOG("[ALSA]: Period size: %d frames\n", (int)buffer_size);
if (snd_pcm_hw_params_get_buffer_size(params, &buffer_size))
snd_pcm_hw_params_get_buffer_size_max(params, &buffer_size);
RARCH_LOG("[ALSA]: Buffer size: %d frames\n", (int)buffer_size);
alsa->buffer_size = snd_pcm_frames_to_bytes(alsa->pcm, buffer_size);
alsa->can_pause = snd_pcm_hw_params_can_pause(params);
RARCH_LOG("[ALSA]: Can pause: %s.\n", alsa->can_pause ? "yes" : "no");
if (snd_pcm_sw_params_malloc(&sw_params) < 0)
goto error;
if (snd_pcm_sw_params_current(alsa->pcm, sw_params) < 0)
goto error;
if (snd_pcm_sw_params_set_start_threshold(
alsa->pcm, sw_params, buffer_size / 2) < 0)
goto error;
if (snd_pcm_sw_params(alsa->pcm, sw_params) < 0)
goto error;
snd_pcm_hw_params_free(params);
snd_pcm_sw_params_free(sw_params);
}
return alsa;
error:
RARCH_ERR("[ALSA]: Failed to initialize...\n");
if (params)
snd_pcm_hw_params_free(params);
if (sw_params)
snd_pcm_sw_params_free(sw_params);
alsa_free(alsa);
if (alsa)
{
if (alsa->pcm)
{
snd_pcm_close(alsa->pcm);
snd_config_update_free_global();
}
free(alsa);
}
return NULL;
}
@@ -186,8 +79,8 @@ static ssize_t alsa_write(void *data, const void *buf_, size_t size_)
alsa_t *alsa = (alsa_t*)data;
const uint8_t *buf = (const uint8_t*)buf_;
snd_pcm_sframes_t written = 0;
snd_pcm_sframes_t size = BYTES_TO_FRAMES(size_, alsa->frame_bits);
size_t frames_size = alsa->has_float ? sizeof(float) : sizeof(int16_t);
snd_pcm_sframes_t size = BYTES_TO_FRAMES(size_, alsa->stream_info.frame_bits);
size_t frames_size = alsa->stream_info.has_float ? sizeof(float) : sizeof(int16_t);
/* Workaround buggy menu code.
* If a write happens while we're paused, we might never progress. */
@@ -279,7 +172,7 @@ static bool alsa_stop(void *data)
if (alsa->is_paused)
return true;
if (alsa->can_pause
if (alsa->stream_info.can_pause
&& !alsa->is_paused)
{
int ret = snd_pcm_pause(alsa->pcm, 1);
@@ -303,9 +196,9 @@ static bool alsa_start(void *data, bool is_shutdown)
{
alsa_t *alsa = (alsa_t*)data;
if (!alsa->is_paused)
return true;
return true;
if (alsa->can_pause
if (alsa->stream_info.can_pause
&& alsa->is_paused)
{
int ret = snd_pcm_pause(alsa->pcm, 0);
@@ -328,13 +221,9 @@ static void alsa_free(void *data)
if (alsa)
{
if (alsa->pcm)
{
snd_pcm_drop(alsa->pcm);
snd_pcm_close(alsa->pcm);
snd_config_update_free_global();
}
alsa_free_pcm(alsa->pcm);
snd_config_update_free_global();
free(alsa);
}
}
@@ -345,66 +234,23 @@ static size_t alsa_write_avail(void *data)
snd_pcm_sframes_t avail = snd_pcm_avail(alsa->pcm);
if (avail < 0)
return alsa->buffer_size;
return alsa->stream_info.buffer_size;
return FRAMES_TO_BYTES(avail, alsa->frame_bits);
return FRAMES_TO_BYTES(avail, alsa->stream_info.frame_bits);
}
static size_t alsa_buffer_size(void *data)
{
alsa_t *alsa = (alsa_t*)data;
return alsa->buffer_size;
return alsa->stream_info.buffer_size;
}
static void *alsa_device_list_new(void *data)
void *alsa_device_list_new(void *data)
{
void **hints, **n;
union string_list_elem_attr attr;
struct string_list *s = string_list_new();
if (!s)
return NULL;
attr.i = 0;
if (snd_device_name_hint(-1, "pcm", &hints) != 0)
goto error;
n = hints;
while (*n)
{
char *name = snd_device_name_get_hint(*n, "NAME");
char *io = snd_device_name_get_hint(*n, "IOID");
char *desc = snd_device_name_get_hint(*n, "DESC");
/* description of device IOID - input / output identifcation
* ("Input" or "Output"), NULL means both) */
if (!io || (string_is_equal(io, "Output")))
string_list_append(s, name, attr);
if (name)
free(name);
if (io)
free(io);
if (desc)
free(desc);
n++;
}
/* free hint buffer too */
snd_device_name_free_hint(hints);
return s;
error:
string_list_free(s);
return NULL;
return alsa_device_list_type_new("Output");
}
static void alsa_device_list_free(void *data, void *array_list_data)
void alsa_device_list_free(void *data, void *array_list_data)
{
struct string_list *s = (struct string_list*)array_list_data;
+4 -5
View File
@@ -19,7 +19,7 @@
#include <sys/asoundlib.h>
#include <retro_math.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#define MAX_FRAG_SIZE 3072
#define DEFAULT_RATE 48000
@@ -69,7 +69,7 @@ static void *alsa_qsa_init(const char *device,
goto error;
}
if((err = snd_pcm_nonblock_mode(alsa->pcm, 1)) < 0)
if ((err = snd_pcm_nonblock_mode(alsa->pcm, 1)) < 0)
{
RARCH_ERR("[ALSA QSA]: Can't set blocking mode: %s\n",
snd_strerror(err));
@@ -313,11 +313,10 @@ static bool alsa_qsa_start(void *data, bool is_shutdown)
static void alsa_qsa_set_nonblock_state(void *data, bool state)
{
int err;
alsa_qsa_t *alsa = (alsa_qsa_t*)data;
int err;
if((err = snd_pcm_nonblock_mode(alsa->pcm, state)) < 0)
if ((err = snd_pcm_nonblock_mode(alsa->pcm, state)) < 0)
{
RARCH_ERR("Can't set blocking mode to %d: %s\n", state,
snd_strerror(err));
+73 -216
View File
@@ -16,72 +16,63 @@
#include <stdlib.h>
#include <lists/string_list.h>
#include <alsa/asoundlib.h>
#include <rthreads/rthreads.h>
#include <queues/fifo_queue.h>
#include <string/stdstring.h>
#include <asm-generic/errno.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../common/alsa.h" /* For some common functions/types */
#include "../common/alsathread.h"
#include "../../verbosity.h"
#define TRY_ALSA(x) if (x < 0) \
goto error;
typedef struct alsa_thread
{
snd_pcm_t *pcm;
fifo_buffer_t *buffer;
sthread_t *worker_thread;
slock_t *fifo_lock;
scond_t *cond;
slock_t *cond_lock;
size_t buffer_size;
size_t period_size;
snd_pcm_uframes_t period_frames;
alsa_thread_info_t info;
bool nonblock;
bool is_paused;
bool has_float;
volatile bool thread_dead;
} alsa_thread_t;
static void alsa_worker_thread(void *data)
{
alsa_thread_t *alsa = (alsa_thread_t*)data;
uint8_t *buf = (uint8_t *)calloc(1, alsa->period_size);
uint8_t *buf = (uint8_t *)calloc(1, alsa->info.stream_info.period_size);
uintptr_t thread_id = sthread_get_current_thread_id();
if (!buf)
{
RARCH_ERR("failed to allocate audio buffer");
RARCH_ERR("[ALSA] [playback thread %u]: Failed to allocate audio buffer\n", thread_id);
goto end;
}
while (!alsa->thread_dead)
RARCH_DBG("[ALSA] [playback thread %p]: Beginning playback worker thread\n", thread_id);
while (!alsa->info.thread_dead)
{
size_t avail;
size_t fifo_size;
snd_pcm_sframes_t frames;
slock_lock(alsa->fifo_lock);
avail = FIFO_READ_AVAIL(alsa->buffer);
fifo_size = MIN(alsa->period_size, avail);
fifo_read(alsa->buffer, buf, fifo_size);
scond_signal(alsa->cond);
slock_unlock(alsa->fifo_lock);
slock_lock(alsa->info.fifo_lock);
avail = FIFO_READ_AVAIL(alsa->info.buffer);
fifo_size = MIN(alsa->info.stream_info.period_size, avail);
fifo_read(alsa->info.buffer, buf, fifo_size);
scond_signal(alsa->info.cond);
slock_unlock(alsa->info.fifo_lock);
/* If underrun, fill rest with silence. */
memset(buf + fifo_size, 0, alsa->period_size - fifo_size);
memset(buf + fifo_size, 0, alsa->info.stream_info.period_size - fifo_size);
frames = snd_pcm_writei(alsa->pcm, buf, alsa->period_frames);
frames = snd_pcm_writei(alsa->info.pcm, buf, alsa->info.stream_info.period_frames);
if (frames == -EPIPE || frames == -EINTR ||
frames == -ESTRPIPE)
{
if (snd_pcm_recover(alsa->pcm, frames, 1) < 0)
if (snd_pcm_recover(alsa->info.pcm, frames, false) < 0)
{
RARCH_ERR("[ALSA]: (#2) Failed to recover from error (%s)\n",
snd_strerror(frames));
RARCH_ERR("[ALSA] [playback thread %u]: Failed to recover from error: %s\n",
thread_id,
snd_strerror(frames));
break;
}
@@ -89,36 +80,26 @@ static void alsa_worker_thread(void *data)
}
else if (frames < 0)
{
RARCH_ERR("[ALSA]: Unknown error occurred (%s).\n",
snd_strerror(frames));
RARCH_ERR("[ALSA] [playback thread %u]: Error writing audio to device: %s\n",
thread_id,
snd_strerror(frames));
break;
}
}
end:
slock_lock(alsa->cond_lock);
alsa->thread_dead = true;
scond_signal(alsa->cond);
slock_unlock(alsa->cond_lock);
slock_lock(alsa->info.cond_lock);
alsa->info.thread_dead = true;
scond_signal(alsa->info.cond);
slock_unlock(alsa->info.cond_lock);
free(buf);
RARCH_DBG("[ALSA] [playback thread %p]: Ending playback worker thread\n", thread_id);
}
static bool alsa_thread_use_float(void *data)
{
alsa_thread_t *alsa = (alsa_thread_t*)data;
return alsa->has_float;
}
static bool alsathread_find_float_format(snd_pcm_t *pcm,
snd_pcm_hw_params_t *params)
{
if (snd_pcm_hw_params_test_format(pcm, params, SND_PCM_FORMAT_FLOAT) == 0)
{
RARCH_LOG("ALSA: Using floating point format.\n");
return true;
}
RARCH_LOG("ALSA: Using signed 16-bit format.\n");
return false;
return alsa->info.stream_info.has_float;
}
static void alsa_thread_free(void *data)
@@ -127,26 +108,7 @@ static void alsa_thread_free(void *data)
if (alsa)
{
if (alsa->worker_thread)
{
slock_lock(alsa->cond_lock);
alsa->thread_dead = true;
slock_unlock(alsa->cond_lock);
sthread_join(alsa->worker_thread);
}
if (alsa->buffer)
fifo_free(alsa->buffer);
if (alsa->cond)
scond_free(alsa->cond);
if (alsa->fifo_lock)
slock_free(alsa->fifo_lock);
if (alsa->cond_lock)
slock_free(alsa->cond_lock);
if (alsa->pcm)
{
snd_pcm_drop(alsa->pcm);
snd_pcm_close(alsa->pcm);
}
alsa_thread_free_info_members(&alsa->info);
free(alsa);
}
}
@@ -156,86 +118,39 @@ static void *alsa_thread_init(const char *device,
unsigned block_frames,
unsigned *new_rate)
{
snd_pcm_uframes_t buffer_size;
snd_pcm_format_t format;
snd_pcm_hw_params_t *params = NULL;
snd_pcm_sw_params_t *sw_params = NULL;
const char *alsa_dev = device ? device : "default";
unsigned latency_usec = latency * 1000 / 2;
unsigned channels = 2;
unsigned periods = 4;
alsa_thread_t *alsa = (alsa_thread_t*)
calloc(1, sizeof(alsa_thread_t));
alsa_thread_t *alsa = (alsa_thread_t*)calloc(1, sizeof(alsa_thread_t));
if (!alsa)
{
RARCH_ERR("[ALSA] Failed to allocate driver context\n");
return NULL;
}
TRY_ALSA(snd_pcm_open(&alsa->pcm, alsa_dev, SND_PCM_STREAM_PLAYBACK, 0));
RARCH_LOG("[ALSA] Using ALSA version %s\n", snd_asoundlib_version());
TRY_ALSA(snd_pcm_hw_params_malloc(&params));
TRY_ALSA(snd_pcm_hw_params_any(alsa->pcm, params));
if (alsa_init_pcm(&alsa->info.pcm, device, SND_PCM_STREAM_PLAYBACK, rate, latency, 2, &alsa->info.stream_info, new_rate, 0) < 0)
{
goto error;
}
alsa->has_float = alsathread_find_float_format(alsa->pcm, params);
format = alsa->has_float ? SND_PCM_FORMAT_FLOAT : SND_PCM_FORMAT_S16;
TRY_ALSA(snd_pcm_hw_params_set_access(
alsa->pcm, params, SND_PCM_ACCESS_RW_INTERLEAVED));
TRY_ALSA(snd_pcm_hw_params_set_format(alsa->pcm, params, format));
TRY_ALSA(snd_pcm_hw_params_set_channels(alsa->pcm, params, channels));
TRY_ALSA(snd_pcm_hw_params_set_rate(alsa->pcm, params, rate, 0));
TRY_ALSA(snd_pcm_hw_params_set_buffer_time_near(
alsa->pcm, params, &latency_usec, NULL));
TRY_ALSA(snd_pcm_hw_params_set_periods_near(
alsa->pcm, params, &periods, NULL));
TRY_ALSA(snd_pcm_hw_params(alsa->pcm, params));
/* Shouldn't have to bother with this,
* but some drivers are apparently broken. */
if (snd_pcm_hw_params_get_period_size(params, &alsa->period_frames, NULL))
snd_pcm_hw_params_get_period_size_min(
params, &alsa->period_frames, NULL);
RARCH_LOG("ALSA: Period size: %d frames\n", (int)alsa->period_frames);
if (snd_pcm_hw_params_get_buffer_size(params, &buffer_size))
snd_pcm_hw_params_get_buffer_size_max(params, &buffer_size);
RARCH_LOG("ALSA: Buffer size: %d frames\n", (int)buffer_size);
alsa->buffer_size = snd_pcm_frames_to_bytes(alsa->pcm, buffer_size);
alsa->period_size = snd_pcm_frames_to_bytes(alsa->pcm, alsa->period_frames);
TRY_ALSA(snd_pcm_sw_params_malloc(&sw_params));
TRY_ALSA(snd_pcm_sw_params_current(alsa->pcm, sw_params));
TRY_ALSA(snd_pcm_sw_params_set_start_threshold(
alsa->pcm, sw_params, buffer_size / 2));
TRY_ALSA(snd_pcm_sw_params(alsa->pcm, sw_params));
snd_pcm_hw_params_free(params);
snd_pcm_sw_params_free(sw_params);
alsa->fifo_lock = slock_new();
alsa->cond_lock = slock_new();
alsa->cond = scond_new();
alsa->buffer = fifo_new(alsa->buffer_size);
if (!alsa->fifo_lock || !alsa->cond_lock || !alsa->cond || !alsa->buffer)
alsa->info.fifo_lock = slock_new();
alsa->info.cond_lock = slock_new();
alsa->info.cond = scond_new();
alsa->info.buffer = fifo_new(alsa->info.stream_info.buffer_size);
if (!alsa->info.fifo_lock || !alsa->info.cond_lock || !alsa->info.cond || !alsa->info.buffer)
goto error;
alsa->worker_thread = sthread_create(alsa_worker_thread, alsa);
if (!alsa->worker_thread)
alsa->info.worker_thread = sthread_create(alsa_worker_thread, alsa);
if (!alsa->info.worker_thread)
{
RARCH_ERR("error initializing worker thread");
RARCH_ERR("[ALSA]: Failed to initialize worker thread\n");
goto error;
}
return alsa;
error:
RARCH_ERR("ALSA: Failed to initialize...\n");
if (params)
snd_pcm_hw_params_free(params);
if (sw_params)
snd_pcm_sw_params_free(sw_params);
RARCH_ERR("[ALSA]: Failed to initialize...\n");
alsa_thread_free(alsa);
@@ -246,7 +161,7 @@ static ssize_t alsa_thread_write(void *data, const void *buf, size_t size)
{
alsa_thread_t *alsa = (alsa_thread_t*)data;
if (alsa->thread_dead)
if (alsa->info.thread_dead)
return -1;
if (alsa->nonblock)
@@ -254,38 +169,38 @@ static ssize_t alsa_thread_write(void *data, const void *buf, size_t size)
size_t avail;
size_t write_amt;
slock_lock(alsa->fifo_lock);
avail = FIFO_WRITE_AVAIL(alsa->buffer);
slock_lock(alsa->info.fifo_lock);
avail = FIFO_WRITE_AVAIL(alsa->info.buffer);
write_amt = MIN(avail, size);
fifo_write(alsa->buffer, buf, write_amt);
slock_unlock(alsa->fifo_lock);
fifo_write(alsa->info.buffer, buf, write_amt);
slock_unlock(alsa->info.fifo_lock);
return write_amt;
}
else
{
size_t written = 0;
while (written < size && !alsa->thread_dead)
while (written < size && !alsa->info.thread_dead)
{
size_t avail;
slock_lock(alsa->fifo_lock);
avail = FIFO_WRITE_AVAIL(alsa->buffer);
slock_lock(alsa->info.fifo_lock);
avail = FIFO_WRITE_AVAIL(alsa->info.buffer);
if (avail == 0)
{
slock_unlock(alsa->fifo_lock);
slock_lock(alsa->cond_lock);
if (!alsa->thread_dead)
scond_wait(alsa->cond, alsa->cond_lock);
slock_unlock(alsa->cond_lock);
slock_unlock(alsa->info.fifo_lock);
slock_lock(alsa->info.cond_lock);
if (!alsa->info.thread_dead)
scond_wait(alsa->info.cond, alsa->info.cond_lock);
slock_unlock(alsa->info.cond_lock);
}
else
{
size_t write_amt = MIN(size - written, avail);
fifo_write(alsa->buffer,
fifo_write(alsa->info.buffer,
(const char*)buf + written, write_amt);
slock_unlock(alsa->fifo_lock);
slock_unlock(alsa->info.fifo_lock);
written += write_amt;
}
}
@@ -330,76 +245,18 @@ static size_t alsa_thread_write_avail(void *data)
alsa_thread_t *alsa = (alsa_thread_t*)data;
size_t val;
if (alsa->thread_dead)
if (alsa->info.thread_dead)
return 0;
slock_lock(alsa->fifo_lock);
val = FIFO_WRITE_AVAIL(alsa->buffer);
slock_unlock(alsa->fifo_lock);
slock_lock(alsa->info.fifo_lock);
val = FIFO_WRITE_AVAIL(alsa->info.buffer);
slock_unlock(alsa->info.fifo_lock);
return val;
}
static size_t alsa_thread_buffer_size(void *data)
{
alsa_thread_t *alsa = (alsa_thread_t*)data;
return alsa->buffer_size;
}
static void *alsa_thread_device_list_new(void *data)
{
void **hints, **n;
union string_list_elem_attr attr;
struct string_list *s = string_list_new();
if (!s)
return NULL;
attr.i = 0;
if (snd_device_name_hint(-1, "pcm", &hints) != 0)
goto error;
n = hints;
while (*n)
{
char *name = snd_device_name_get_hint(*n, "NAME");
char *io = snd_device_name_get_hint(*n, "IOID");
char *desc = snd_device_name_get_hint(*n, "DESC");
/* description of device IOID - input / output identifcation
* ("Input" or "Output"), NULL means both) */
if (!io || string_is_equal(io,"Output"))
string_list_append(s, name, attr);
if (name)
free(name);
if (io)
free(io);
if (desc)
free(desc);
n++;
}
/* free hint buffer too */
snd_device_name_free_hint(hints);
return s;
error:
string_list_free(s);
return NULL;
}
static void alsa_thread_device_list_free(void *data, void *array_list_data)
{
struct string_list *s = (struct string_list*)array_list_data;
if (!s)
return;
string_list_free(s);
return alsa->info.stream_info.buffer_size;
}
audio_driver_t audio_alsathread = {
@@ -412,8 +269,8 @@ audio_driver_t audio_alsathread = {
alsa_thread_free,
alsa_thread_use_float,
"alsathread",
alsa_thread_device_list_new,
alsa_thread_device_list_free,
alsa_device_list_new, /* Reusing these functions from alsa.c */
alsa_device_list_free, /* because they don't use the driver context */
alsa_thread_write_avail,
alsa_thread_buffer_size,
alsa_thread_buffer_size
};
+2 -2
View File
@@ -24,10 +24,10 @@
#include <sys/audioio.h>
#ifdef HAVE_CONFIG_H
#include "config.h"
#include "../../config.h"
#endif
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../verbosity.h"
#define DEFAULT_DEV "/dev/audio"
+33 -64
View File
@@ -31,14 +31,16 @@
#include <retro_endianness.h>
#include <string/stdstring.h>
#include "../../retroarch.h"
#include <defines/cocoa_defines.h>
#include "../audio_driver.h"
#include "../../verbosity.h"
typedef struct coreaudio
{
slock_t *lock;
scond_t *cond;
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
#if !HAS_MACOSX_10_12
ComponentInstance dev;
#else
AudioComponentInstance dev;
@@ -50,10 +52,6 @@ typedef struct coreaudio
bool nonblock;
} coreaudio_t;
#if TARGET_OS_IOS
static bool g_interrupted;
#endif
static void coreaudio_free(void *data)
{
coreaudio_t *dev = (coreaudio_t*)data;
@@ -64,7 +62,7 @@ static void coreaudio_free(void *data)
if (dev->dev_alive)
{
AudioOutputUnitStop(dev->dev);
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
#if !HAS_MACOSX_10_12
CloseComponent(dev->dev);
#else
AudioComponentInstanceDispose(dev->dev);
@@ -121,25 +119,17 @@ static OSStatus audio_write_cb(void *userdata,
return noErr;
}
#if TARGET_OS_IPHONE
static void coreaudio_interrupt_listener(void *data, UInt32 interrupt_state)
{
(void)data;
#if TARGET_OS_IOS
g_interrupted = (interrupt_state == kAudioSessionBeginInterruption);
#endif
}
#else
#if !TARGET_OS_IPHONE
static void choose_output_device(coreaudio_t *dev, const char* device)
{
unsigned i;
int i;
UInt32 deviceCount;
AudioObjectPropertyAddress propaddr;
AudioDeviceID *devices = NULL;
UInt32 size = 0;
propaddr.mSelector = kAudioHardwarePropertyDevices;
#if MAC_OS_X_VERSION_10_12
#if HAS_MACOSX_10_12
propaddr.mScope = kAudioObjectPropertyScopeOutput;
#else
propaddr.mScope = kAudioObjectPropertyScopeGlobal;
@@ -157,7 +147,7 @@ static void choose_output_device(coreaudio_t *dev, const char* device)
&propaddr, 0, 0, &size, devices) != noErr)
goto done;
#if MAC_OS_X_VERSION_10_12
#if HAS_MACOSX_10_12
#else
propaddr.mScope = kAudioDevicePropertyScopeOutput;
#endif
@@ -192,7 +182,7 @@ static void *coreaudio_init(const char *device,
size_t fifo_size;
UInt32 i_size;
AudioStreamBasicDescription real_desc;
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
#if !HAS_MACOSX_10_12
Component comp;
#else
AudioComponent comp;
@@ -202,9 +192,7 @@ static void *coreaudio_init(const char *device,
#endif
AURenderCallbackStruct cb = {0};
AudioStreamBasicDescription stream_desc = {0};
bool component_unavailable = false;
static bool session_initialized = false;
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
#if !HAS_MACOSX_10_12
ComponentDescription desc = {0};
#else
AudioComponentDescription desc = {0};
@@ -214,46 +202,33 @@ static void *coreaudio_init(const char *device,
if (!dev)
return NULL;
(void)session_initialized;
(void)device;
dev->lock = slock_new();
dev->cond = scond_new();
#if TARGET_OS_IOS
if (!session_initialized)
{
session_initialized = true;
AudioSessionInitialize(0, 0, coreaudio_interrupt_listener, 0);
AudioSessionSetActive(true);
}
#endif
/* Create AudioComponent */
desc.componentType = kAudioUnitType_Output;
desc.componentType = kAudioUnitType_Output;
#if TARGET_OS_IPHONE
desc.componentSubType = kAudioUnitSubType_RemoteIO;
desc.componentSubType = kAudioUnitSubType_RemoteIO;
#else
desc.componentSubType = kAudioUnitSubType_HALOutput;
desc.componentSubType = kAudioUnitSubType_HALOutput;
#endif
desc.componentManufacturer = kAudioUnitManufacturer_Apple;
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
comp = FindNextComponent(NULL, &desc);
#else
comp = AudioComponentFindNext(NULL, &desc);
#endif
if (!comp)
#if !HAS_MACOSX_10_12
if (!(comp = FindNextComponent(NULL, &desc)))
goto error;
#if (defined(__MACH__) && (defined(__ppc__) || defined(__ppc64__)))
component_unavailable = (OpenAComponent(comp, &dev->dev) != noErr);
#else
component_unavailable = (AudioComponentInstanceNew(comp, &dev->dev) != noErr);
if (!(comp = AudioComponentFindNext(NULL, &desc)))
goto error;
#endif
if (component_unavailable)
#if !HAS_MACOSX_10_12
if ((OpenAComponent(comp, &dev->dev) != noErr))
goto error;
#else
if ((AudioComponentInstanceNew(comp, &dev->dev) != noErr))
goto error;
#endif
#if !TARGET_OS_IPHONE
if (device)
@@ -306,7 +281,7 @@ static void *coreaudio_init(const char *device,
#endif
/* Set callbacks and finish up. */
cb.inputProc = audio_write_cb;
cb.inputProc = audio_write_cb;
cb.inputProcRefCon = dev;
if (AudioUnitSetProperty(dev->dev, kAudioUnitProperty_SetRenderCallback,
@@ -320,8 +295,7 @@ static void *coreaudio_init(const char *device,
fifo_size *= 2 * sizeof(float);
dev->buffer_size = fifo_size;
dev->buffer = fifo_new(fifo_size);
if (!dev->buffer)
if (!(dev->buffer = fifo_new(fifo_size)))
goto error;
RARCH_LOG("[CoreAudio]: Using buffer size of %u bytes: (latency = %u ms)\n",
@@ -344,11 +318,7 @@ static ssize_t coreaudio_write(void *data, const void *buf_, size_t size)
const uint8_t *buf = (const uint8_t*)buf_;
size_t written = 0;
#if TARGET_OS_IOS
while (!g_interrupted && size > 0)
#else
while (size > 0)
#endif
while (!dev->is_paused && size > 0)
{
size_t write_avail;
@@ -371,8 +341,11 @@ static ssize_t coreaudio_write(void *data, const void *buf_, size_t size)
#if TARGET_OS_IOS
if (write_avail == 0 && !scond_wait_timeout(
dev->cond, dev->lock, 3000000))
g_interrupted = true;
dev->cond, dev->lock, 300000))
{
slock_unlock(dev->lock);
break;
}
#else
if (write_avail == 0)
scond_wait(dev->cond, dev->lock);
@@ -416,11 +389,7 @@ static bool coreaudio_start(void *data, bool is_shutdown)
return dev->is_paused ? false : true;
}
static bool coreaudio_use_float(void *data)
{
(void)data;
return true;
}
static bool coreaudio_use_float(void *data) { return true; }
static size_t coreaudio_write_avail(void *data)
{
+2 -2
View File
@@ -22,7 +22,7 @@
#include <stdlib.h>
#include <memory.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../verbosity.h"
#pragma mark - ringbuffer
@@ -204,7 +204,7 @@ static bool g_interrupted;
return nil;
format = au.outputBusses[0].format;
if (format.channelCount != 2)
if (format.channelCount < 2)
return nil;
renderFormat = [[AVAudioFormat alloc] initStandardFormatWithSampleRate:rate channels:2];
+2 -7
View File
@@ -19,7 +19,7 @@
#include <retro_miscellaneous.h>
#include <retro_timers.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
typedef struct
{
@@ -170,14 +170,9 @@ static ssize_t ctr_csnd_audio_write(void *data, const void *buf, size_t size)
const uint16_t *src = buf;
ctr_csnd_audio_t *ctr = (ctr_csnd_audio_t*)data;
(void)data;
(void)buf;
(void)samples_played;
(void)current_tick;
ctr_csnd_audio_update_playpos(ctr);
if((((ctr->playpos - ctr->pos) & CTR_CSND_AUDIO_COUNT_MASK) < (CTR_CSND_AUDIO_COUNT >> 2)) ||
if ((((ctr->playpos - ctr->pos) & CTR_CSND_AUDIO_COUNT_MASK) < (CTR_CSND_AUDIO_COUNT >> 2)) ||
(((ctr->pos - ctr->playpos ) & CTR_CSND_AUDIO_COUNT_MASK) < (CTR_CSND_AUDIO_COUNT >> 4)) ||
(((ctr->playpos - ctr->pos) & CTR_CSND_AUDIO_COUNT_MASK) < (size >> 2)))
{
+7 -6
View File
@@ -17,7 +17,7 @@
#include <string.h>
#include <malloc.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../ctr/ctr_debug.h"
typedef struct
@@ -97,7 +97,7 @@ static ssize_t ctr_dsp_audio_write(void *data, const void *buf, size_t size)
ctr_dsp_audio_t * ctr = (ctr_dsp_audio_t*)data;
uint32_t sample_pos = ndspChnGetSamplePos(ctr->channel);
if((((sample_pos - ctr->pos) & CTR_DSP_AUDIO_COUNT_MASK) < (CTR_DSP_AUDIO_COUNT >> 2)) ||
if ((((sample_pos - ctr->pos) & CTR_DSP_AUDIO_COUNT_MASK) < (CTR_DSP_AUDIO_COUNT >> 2)) ||
(((ctr->pos - sample_pos ) & CTR_DSP_AUDIO_COUNT_MASK) < (CTR_DSP_AUDIO_COUNT >> 4)) ||
(((sample_pos - ctr->pos) & CTR_DSP_AUDIO_COUNT_MASK) < (size >> 2)))
{
@@ -105,26 +105,27 @@ static ssize_t ctr_dsp_audio_write(void *data, const void *buf, size_t size)
ctr->pos = (sample_pos + (CTR_DSP_AUDIO_COUNT >> 1)) & CTR_DSP_AUDIO_COUNT_MASK;
else
{
do{
do
{
svcSleepThread(100000);
/* Run aptMainLoop to update APT state if DSP state
* changed, this prevents a hang on sleep. */
if(!aptMainLoop())
if (!aptMainLoop())
{
command_event(CMD_EVENT_QUIT, NULL);
return true;
}
sample_pos = ndspChnGetSamplePos(ctr->channel);
}while (((sample_pos - (ctr->pos + (size >>2))) & CTR_DSP_AUDIO_COUNT_MASK) > (CTR_DSP_AUDIO_COUNT >> 1)
}while ( ((sample_pos - (ctr->pos + (size >>2))) & CTR_DSP_AUDIO_COUNT_MASK) > (CTR_DSP_AUDIO_COUNT >> 1)
|| (((ctr->pos - (CTR_DSP_AUDIO_COUNT >> 4) - sample_pos) & CTR_DSP_AUDIO_COUNT_MASK) > (CTR_DSP_AUDIO_COUNT >> 1)));
}
}
pos = ctr->pos << 2;
if((pos + size) > CTR_DSP_AUDIO_SIZE)
if ((pos + size) > CTR_DSP_AUDIO_SIZE)
{
memcpy(ctr->dsp_buf.data_pcm8 + pos, buf,
(CTR_DSP_AUDIO_SIZE - pos));
+1 -1
View File
@@ -19,7 +19,7 @@
#include <queues/fifo_queue.h>
#include <rthreads/rthreads.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../ctr/ctr_debug.h"
typedef struct
+15 -10
View File
@@ -39,7 +39,7 @@
#include <queues/fifo_queue.h>
#include <string/stdstring.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../verbosity.h"
#ifdef _XBOX
@@ -136,8 +136,8 @@ static void dsound_thread(void *data)
static DWORD CALLBACK dsound_thread(PVOID data)
#endif
{
DWORD write_ptr;
dsound_t *ds = (dsound_t*)data;
DWORD write_ptr = 0;
dsound_t *ds = (dsound_t*)data;
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
@@ -315,15 +315,20 @@ static BOOL CALLBACK enumerate_cb(LPGUID guid,
if (guid)
{
unsigned i;
LPGUID guid_copy = (LPGUID)malloc(sizeof(GUID) * 1);
guid_copy->Data1 = guid->Data1;
guid_copy->Data2 = guid->Data2;
guid_copy->Data3 = guid->Data3;
for (i = 0; i < 8; i++)
guid_copy->Data4[i] = guid->Data4[i];
list->elems[list->size-1].userdata = guid_copy;
if (guid_copy)
{
unsigned i;
guid_copy->Data1 = guid->Data1;
guid_copy->Data2 = guid->Data2;
guid_copy->Data3 = guid->Data3;
for (i = 0; i < 8; i++)
guid_copy->Data4[i] = guid->Data4[i];
list->elems[list->size - 1].userdata = guid_copy;
}
}
return TRUE;
+6 -4
View File
@@ -27,9 +27,10 @@
#include <boolean.h>
#include <retro_inline.h>
#include "../../retroarch.h"
#include <defines/gx_defines.h>
#include "../audio_driver.h"
typedef struct
{
size_t write_ptr;
@@ -78,13 +79,14 @@ static void *gx_audio_init(const char *device,
AIInit(NULL);
AIRegisterDMACallback(dma_callback);
//ranges 0-32000 (default low) and 40000-47999 (in settings going down from 48000) -> set to 32000 hz
/* Ranges 0-32000 (default low) and 40000-47999
(in settings going down from 48000) -> set to 32000 hz */
if (rate <= 32000 || (rate >= 40000 && rate < 48000))
{
AISetDSPSampleRate(AI_SAMPLERATE_32KHZ);
*new_rate = 32000;
}
else //ranges 32001-39999 (in settings going up from 32000) and 48000-max (default high) -> set to 48000 hz
else /* Ranges 32001-39999 (in settings going up from 32000) and 48000-max (default high) -> set to 48000 hz */
{
AISetDSPSampleRate(AI_SAMPLERATE_48KHZ);
*new_rate = 48000;
@@ -92,7 +94,7 @@ static void *gx_audio_init(const char *device,
wa->dma_write = BLOCKS - 1;
DCFlushRange(wa->data, sizeof(wa->data));
stop_audio = false;
stop_audio = false;
AIInitDMA((uint32_t)wa->data[wa->dma_next], CHUNK_SIZE);
AIStartDMA();
+1 -1
View File
@@ -26,7 +26,7 @@
#include <rthreads/rthreads.h>
#include "../../configuration.h"
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../verbosity.h"
#define FRAMES(x) (x / (sizeof(float) * 2))
+11 -11
View File
@@ -33,10 +33,10 @@
#include <retro_miscellaneous.h>
#include <retro_timers.h>
#include "../../retroarch.h"
#include "../audio_driver.h"
#include "../../verbosity.h"
#define BUFSIZE 1024
#define OPENAL_BUFSIZE 1024
typedef struct al
{
@@ -46,11 +46,11 @@ typedef struct al
ALCdevice *handle;
ALCcontext *ctx;
size_t res_ptr;
size_t num_buffers;
ALsizei num_buffers;
size_t tmpbuf_ptr;
int rate;
ALenum format;
uint8_t tmpbuf[BUFSIZE];
uint8_t tmpbuf[OPENAL_BUFSIZE];
bool nonblock;
bool is_paused;
} al_t;
@@ -104,11 +104,11 @@ static void *al_init(const char *device, unsigned rate, unsigned latency,
al->rate = rate;
/* We already use one buffer for tmpbuf. */
al->num_buffers = (latency * rate * 2 * sizeof(int16_t)) / (1000 * BUFSIZE) - 1;
al->num_buffers = (latency * rate * 2 * sizeof(int16_t)) / (1000 * OPENAL_BUFSIZE) - 1;
if (al->num_buffers < 2)
al->num_buffers = 2;
RARCH_LOG("[OpenAL]: Using %u buffers of %u bytes.\n", (unsigned)al->num_buffers, BUFSIZE);
RARCH_LOG("[OpenAL]: Using %u buffers of %u bytes.\n", (unsigned)al->num_buffers, OPENAL_BUFSIZE);
al->buffers = (ALuint*)calloc(al->num_buffers, sizeof(ALuint));
al->res_buf = (ALuint*)calloc(al->num_buffers, sizeof(ALuint));
@@ -165,7 +165,7 @@ static bool al_get_buffer(al_t *al, ALuint *buffer)
static size_t al_fill_internal_buf(al_t *al, const void *buf, size_t size)
{
size_t read_size = MIN(BUFSIZE - al->tmpbuf_ptr, size);
size_t read_size = MIN(OPENAL_BUFSIZE - al->tmpbuf_ptr, size);
memcpy(al->tmpbuf + al->tmpbuf_ptr, buf, read_size);
al->tmpbuf_ptr += read_size;
return read_size;
@@ -187,13 +187,13 @@ static ssize_t al_write(void *data, const void *buf_, size_t size)
buf += rc;
size -= rc;
if (al->tmpbuf_ptr != BUFSIZE)
if (al->tmpbuf_ptr != OPENAL_BUFSIZE)
break;
if (!al_get_buffer(al, &buffer))
break;
alBufferData(buffer, AL_FORMAT_STEREO16, al->tmpbuf, BUFSIZE, al->rate);
alBufferData(buffer, AL_FORMAT_STEREO16, al->tmpbuf, OPENAL_BUFSIZE, al->rate);
al->tmpbuf_ptr = 0;
alSourceQueueBuffers(al->source, 1, &buffer);
if (alGetError() != AL_NO_ERROR)
@@ -245,13 +245,13 @@ static size_t al_write_avail(void *data)
{
al_t *al = (al_t*)data;
al_unqueue_buffers(al);
return al->res_ptr * BUFSIZE + (BUFSIZE - al->tmpbuf_ptr);
return al->res_ptr * OPENAL_BUFSIZE + (OPENAL_BUFSIZE - al->tmpbuf_ptr);
}
static size_t al_buffer_size(void *data)
{
al_t *al = (al_t*)data;
return (al->num_buffers + 1) * BUFSIZE; /* Also got tmpbuf. */
return (al->num_buffers + 1) * OPENAL_BUFSIZE; /* Also got tmpbuf. */
}
static bool al_use_float(void *data)
Loaded 100 of 5042 files, more files were not shown because too many files have changed in this diff. Show more