Commit Graph

3660 Commits

Author SHA1 Message Date
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
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
Michael Burgardt f6f7d145d2 Add core options translation scripts 2021-09-02 19:07:28 +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
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
twinaphex 9a97eb47ad Fix typos 2021-08-21 19:11:21 +02:00
twinaphex ca26e50050 (sinc) Add non-ASM ARM NEON intrinsics codepath for Sinc resampler 2021-08-21 18:52:20 +02:00
twinaphex b620325714 Rename HAVE_ARM_NEON_OPTIMIZATIOn to HAVE_ARM_NEON_ASM_OPTIMIZATIONS,
rename DONT_WANT_ARM_OPTIMIZATIONS to DONT_WANT_ARM_NEON_OPTIMIZATIONS
2021-08-21 18:00:59 +02:00
Autechre 5e879fa201
Merge pull request #12794 from DisasterMo/master
Add core options v1 to v2 conversion script
2021-08-18 18:17:26 +02:00
jdgleaver 0e98b4ddea Add environment callback for enabling core option menu visibility updates without toggling Quick Menu 2021-08-18 16:08:26 +01:00
twinaphex dfea030f5b Revert "Update libretro.h header file"
This reverts commit f3458fb943.
2021-08-17 10:38:14 +02:00
twinaphex f3458fb943 Update libretro.h header file 2021-08-16 23:53:50 +02:00
twinaphex 6223ba47fd Bring back these tiny optimizations from foobar2k 2021-08-15 22:54:21 +02:00
twinaphex 1906a741c2 Rollback sinc resampler changes - themaister wasn't sure if these were
actual optimizations
2021-08-15 22:45:59 +02:00
Michael Burgardt 2d934f4d53 Add core options v1 to v2 conversion script 2021-08-15 13:07:31 +02:00
Autechre fe10d285ec
Merge pull request #12793 from Xbox-Homebrew/master
fix loading arcade dat files
2021-08-13 22:07:59 +02:00
Tunip3 4116cb6fa5 fix issue where filesizes where not returned properly, this fixes loading arcade dat files 2021-08-13 20:33:27 +01:00
Autechre 1c4895b8bf
Merge pull request #12789 from Xbox-Homebrew/master
Fix beetle cores on UWP and clean up the method in which drives are listed
2021-08-13 15:54:18 +02:00
twinaphex ac4adabeb9 Silence some unused variable warnings 2021-08-12 17:00:24 +02:00
twinaphex b375e08c67 (libretro-common) fill_pathname_abbreviated_or_relative - fix warning -
variable is uninitialized
2021-08-11 18:50:03 +02:00
Tunip3 a4017e69e4 fix cd based beetle cores 2021-08-10 17:24:31 +01:00
jdgleaver f58c7f69d9 (nested_list) Fix heap-use-after-free errors due to pointer invalidation when resizing internal RBUF arrays 2021-08-09 23:08:17 +01:00
jdgleaver e42a1895af Remove unused variable in core options v2 sample template file 2021-08-09 17:02:11 +01:00
Autechre ef3dbc8378
Merge pull request #12749 from jdgleaver/core-option-category
Add core option category support
2021-08-09 14:19:00 +02:00
jdgleaver 1f7532bf52 Add core options v2 template in 'libretro-common/samples/core_options/example_categories' 2021-08-09 12:23:43 +01:00
twinaphex 93e5fc60af Silence some warnings 2021-08-08 22:14:50 +02:00
twinaphex 9700a009c5 (7zip) Use normal stdint.h types that don't conflict with PowerPC
Mac's OSTypes.h
2021-08-07 01:43:08 +02:00
jdgleaver fe1f311a35 Add core option category support 2021-08-06 15:33:47 +01:00
Tunip3 be1a768bca improve uwp fileio by using from app variants whereever possible 2021-07-31 04:36:08 +01:00
Jamiras 5ac432026a add helper function for accessing connection method 2021-07-27 21:02:14 -06:00
Autechre c007a81103
Merge pull request #12672 from QuarkTheAwesome/network-fixes
(Wii U) Network speed optimisations
2021-07-18 22:16:01 +02:00
Ash Logan e43f07b85b wiiu: Add fastpath for already aligned buffers 2021-07-18 22:33:26 +10:00
Ash Logan a3be19214e vfs: Use 128k vbufs for Wii U
We have loads of RAM and large vbufs are *very* beneficial
2021-07-18 22:33:17 +10:00
Ash Logan e5553bde4e wiiu: Network optimisations - WINSCALE, TCP sACK, large buffers
See code sample in https://github.com/devkitPro/wut/issues/169 and 
2430789406/src/net.c (L88)
2021-07-18 21:02:56 +10:00
John Parton f6aeb717ba Basic rs90 build
DINGUX_BETA has clock_gettime libogc
Add tinyalsa support to rs90
2021-07-13 11:36:48 -05:00
CrystalCT 89b46bc246 First basic RSX driver for PSL1GHT 2021-07-12 09:35:44 +02:00
Mark W. Kidd d4fb27a7a9 implement natt fix from void() 2021-07-08 22:52:19 -04:00
Autechre 375eb4b852
Merge pull request #12459 from toshixm/fix_12103
Fix garbled path string
2021-07-08 12:05:07 +02:00
jdgleaver eafeb83d0b Fix archive delimiter detection when file path contains no slashes 2021-06-28 10:40:37 +01:00
twinaphex 46dcf1204e Revert "Backport tunip3 - replace win32 functions with UWP safe variants in UWP vfs driver"
This reverts commit 585af66b5c.
2021-06-27 05:39:48 +02:00
twinaphex 585af66b5c Backport tunip3 - replace win32 functions with UWP safe variants in UWP vfs driver 2021-06-23 18:45:07 +02:00
twinaphex 3f00d2f041 (Resampler) Cleanups 2021-06-22 01:14:32 +02:00
twinaphex 7492f5d60c Revert "Add HAVE_GRIFFIN fallback for now"
This reverts commit dc50ff584e.
2021-06-11 12:05:59 +02:00
twinaphex bd9c35d379 Revert "Rollback changes for now until we can get this compiling on MSVC 2005 on"
This reverts commit 08481e2a68.
2021-06-11 12:05:48 +02:00
twinaphex 08481e2a68 Rollback changes for now until we can get this compiling on MSVC 2005 on
the commandline (it builds with the VS solution file but not CLI)
2021-06-09 16:39:43 +02:00
twinaphex dc50ff584e Add HAVE_GRIFFIN fallback for now 2021-06-09 16:33:32 +02:00
Autechre 74d85e3269
Backport optimizations from foobar2K 2021-06-09 06:05:14 +02:00
Autechre fce9da5e76
Merge pull request #12445 from toshixm/CJK_folding_rev2
Improve message wrapping with CJK languages
2021-06-04 20:14:55 +02:00
jdgleaver b5df2b883a Fix loading of archived content with file names containing '#' characters 2021-06-03 16:40:13 +01:00
toshixm 4fab84ca9e improve message wrapping with CJK languages 2021-06-03 21:09:35 +09:00
Autechre d8a5505204
Merge pull request #12473 from jdgleaver/content-data-api
Add API extension for setting 'need_fullpath' based on content file extension and to request persistent frontend content data buffers
2021-06-03 13:11:56 +02:00
toshixm 1218aebfbf static allocation instead of malloc() 2021-06-03 15:26:33 +09:00
jdgleaver 55c855267e Add API extension for setting 'need_fullpath' based on content file extension and to request persistent frontend content data buffers 2021-06-01 15:28:39 +01:00
toshixm 935c7d0e2c use _wfullpath() instead of _fullpath() 2021-05-30 09:17:06 +09:00
toshixm 84975d71ea fix garbled characters when conveting to local encoding 2021-05-28 15:20:19 +09:00
toshixm a39c38f267 refactor word_wrap() 2021-05-27 19:55:37 +09:00
jdgleaver 334a43a7c5 Prevent unnecessary extraction (to disk) of compressed content files + task_content.c clean-ups 2021-05-20 17:08:51 +01:00
twinaphex de88edf56c Fix header include now that defines/ files are in libretro-common 2021-05-19 16:47:40 +02:00
U-LAPTOP-0BS9KNOH\crystal 23acacf436 PSL1GHT salamander build fix 2021-05-19 00:31:09 +02:00
twinaphex 35543ecd91 Move defines files over to libretro-common 2021-05-18 22:15:04 +02:00
twinaphex 7bbdd6d18a Prefer using snprintf instead of insecure sprintf 2021-05-18 15:14:08 +02:00
Alcaro 654aae58d6 rpng: Fix some memory corruption if processing broken input 2021-05-17 08:43:53 +02:00
jdgleaver 484c4ad51e Add API extension for cores to override frontend fast-forward state 2021-05-13 13:16:37 +01:00
David Guillen Fandos 32d6eeaf07 Moving more stuff from samples to tests
Reworked the test a bit to make it separate from RA's build system for
simplicity.
Reworked the testing a bit to ensure coverage is properly generated.
This needs more work since it's rather manual and verbose
2021-05-10 19:45:50 +02:00
David Guillen Fandos a0f0d7bed2 Add more tests and coverage generation 2021-05-06 18:43:56 +02:00
Norman Jordan 528af55abd Adding a generic queue and linked list.
Both accept (void *) values. Also added some unit tests using CHECK.
2021-05-05 10:41:13 -07:00
David Guillen Fandos b2c20e8ce0 Initial support for tweaking CPU governors/scaling policies
This is, at the moment, aimed at Lakka only.
2021-05-01 18:35:38 +02:00
jdgleaver 02630d998e Fix config file appending and 'including' 2021-04-29 12:29:47 +01:00
jdgleaver b1a7d3e995 (config_file) Modify hash map usage for proper compatibility with updated RHMAP implementation 2021-04-28 17:34:24 +01:00
Autechre 7fc636c623
Merge pull request #12332 from Alcaro/master
Track the complete string in rhmap
2021-04-28 17:05:27 +02:00
Alcaro 2c5c4647e3 Track the complete string in rhmap 2021-04-28 16:09:45 +02:00
jdgleaver a501dfd680 Update 7-Zip dependency to latest stable version (fixes CHD support on static platforms) 2021-04-28 12:00:50 +01:00
David CARLIER 6f898e611c cpu detection detection vfp unit for Darwin. 2021-04-24 22:58:14 +01:00
jdgleaver 29d5963cad (config_file) Use hash map to optimise key/value lookups 2021-04-21 17:33:36 +01:00
David CARLIER 2932a835fc Mac intel and arm64 timer change proposal. 2021-04-20 21:38:01 +01:00
twinaphex 1811bd6885 Fix issue in https://github.com/libretro/neocd_libretro/issues/58 2021-04-16 19:34:06 +02:00
twinaphex 46a37b9bd9 Silence some warnings 2021-04-16 17:55:19 +02:00
David CARLIER 7cbee3dc8f run fast mode disable for 64 bits invalid instructions. 2021-04-16 08:33:01 +01:00
twinaphex 637cff628f * Simplify RARCH_CTL_IS_CORE_LOADED
* Create specialized function path_basename_nocompression
2021-04-11 17:27:31 +02:00
jdgleaver df28f998c2 Fix playlist label sanitisation 2021-03-26 12:22:10 +00:00
twinaphex 5aaf4150e2 (file_path.c) Use strlcpy for these instead of snprintf 2021-03-24 17:26:34 +01:00
Autechre 514edf8b06
Merge pull request #12153 from crystalct/master
Improved vfs implementation on PSL1GHT using lv2 functions
2021-03-15 08:59:32 +01:00
CrystalCT 96a1320977 Improved vfs implementation on PSL1GHT using lv2 functions 2021-03-15 08:38:34 +01:00
twinaphex 938c8f3abc Fix some tvOS warnings 2021-03-15 01:52:18 +01:00
CrystalCT 1d48b9c61e Add some PSL1GHT ifdefs 2021-03-12 12:22:58 +01:00
CrystalCT e67be94b98 Add some PSL1GHT ifdefs 2021-03-12 08:29:17 +01:00
CrystalCT 02c15dd4f5 Add some PSL1GHT ifdefs 2021-03-11 08:15:51 +01:00
CrystalCT 43bb8e6aaa Add some PSL1GHT ifdefs 2021-03-10 09:43:19 +01:00
CrystalCT f9eae08e1b Add some PSL1GHT ifdefs 2021-03-09 08:27:46 +01:00
CrystalCT 3bafc82305 Add some PSL1GHT ifdefs 2021-03-08 13:09:43 +01:00
unknown 1288a35841 Add some PSL1GHT ifdefs 2021-03-07 09:28:59 +01:00
twinaphex 6bba672d60 Compile video and audio filters as ARM64 architecture 2021-02-22 08:11:50 +01:00
twinaphex c43b0f53bf (file_path) Get rid of all the platform-specific headers 2021-02-21 18:50:17 +01:00
Autechre dbe1061742
Refactors (#12057)
* lock_file_path here will never be empty

* Simplify path_mkdir - final return value can become false, and sret
variable can go
2021-02-21 11:09:11 +01:00
twinaphex c01df07f3d Fix ARM NEON detection 2021-02-16 23:02:06 +01:00
twinaphex 4b0f344024 Silence some warnings 2021-02-16 20:57:54 +01:00
twinaphex bdaf3d532a (libretro-common) Resync 2021-02-09 15:49:32 +01:00
Francisco Javier Trujillo Mata 78b8d6933b Add PS2 libco 2021-02-07 21:16:24 +01:00
twinaphex 1348faa209 (RTGA) Lower raw_data size to 18 bytes and leave behind a comment 2021-02-03 11:01:36 +01:00
twinaphex 34636ed9f0 (RTGA) Silence long-standing warning 2021-02-03 10:58:28 +01:00
twinaphex ea7bedf257 Remove one include 2021-02-03 09:58:50 +01:00
sonninnos d78f321d33 Prevent duplicate key events with hotkeys + keyboard device type 2021-01-30 11:41:44 +02:00
Autechre 43611b6b10
(libretro-common) Fix libco for arm64 Mac (#11946) 2021-01-27 11:15:19 +01:00
Daniel De Matteis 59952c520b (Mac) Silence more warnings 2021-01-26 20:39:36 +01:00
Autechre 39e8225c82
(clang/MacOS) Silence warning 'Possible misuse of comma operator here' (#11945)
warnings
2021-01-26 19:43:53 +01:00
Jamiras 98ea2b6a47 improve granularity of custom compat_ctz 2021-01-21 23:29:58 -07:00
Jamiras 78ab9853a7 fix SSE2 implementation of find_change 2021-01-21 22:26:45 -07:00
twinaphex a772eb550d file_list_get_size - list can be NULL, in which case return 0 2021-01-21 00:24:32 +01:00
twinaphex 7867c4b70e Get rid of file_list_get_size calls - one line wrapper function 2021-01-20 08:31:05 +01:00
Twinaphex a83c328631 (Metal) Fix some build problems 2021-01-19 04:38:07 +01:00
twinaphex a9cd33ac56 Revert "Experiment on Apple"
This reverts commit 8769866290.
2021-01-16 23:54:31 +01:00
twinaphex 8769866290 Experiment on Apple 2021-01-16 23:45:06 +01:00
twinaphex 41a8661bdf Silence more implicit conversions 2021-01-16 21:03:57 +01:00
twinaphex 5119a67b41 Simplify code 2021-01-16 20:17:27 +01:00
twinaphex 1b071f16f5 Silence implicit conversion warnings 2021-01-16 20:03:04 +01:00
twinaphex 9f44a4fcd9 Cleanups 2021-01-16 17:30:36 +01:00
twinaphex 552f973833 Cleanups/remove unused variables 2021-01-16 17:17:16 +01:00
GH Cao 19535330d2 [UWP] VFS: Use Win32 file APIs when possible 2021-01-07 00:14:21 +08:00
Bernhard Schelling 9bea4831d7 Add 32-bit key hash map rhmap
Based on ex_hashmap32 in menu_explore.c, modify that to use the new rhmap
2021-01-03 00:52:25 +09:00
Autechre 9797ba9f27
Merge pull request #11743 from HyperspaceMadness/Shaders_Fix_Simple_Preset_Relative_Texture_Paths
Shaders Load Refactor and Fix Referenced Texture Loading
2020-12-31 16:13:20 +01:00
twinaphex c4dc28319f Remove obsolete headers 2020-12-30 00:22:31 +01:00
twinaphex 9c0f272591 Buildfix for PPC Mac 2020-12-29 06:50:52 +01:00
twinaphex c9888eb442 (config_file.c) This can go 2020-12-29 06:32:43 +01:00
twinaphex c03e6c6c38 Put this behind Powerpc/powerpc64 ifdefs 2020-12-29 06:22:06 +01:00
twinaphex 357b7d68f6 (libretro-common) Rename rhash to lrc_hash
(rcheevos) Rename rhash to rc_hash
2020-12-28 19:55:54 +01:00
twinaphex 71efd8ae6e Add powerpc64 defines 2020-12-28 15:45:53 +01:00
twinaphex b1af12efc9 Add more PSL1GHT ifdefs 2020-12-27 18:56:00 +01:00
HyperspaceMadness 0c526b6498 Shaders Load Refactor and Fix Referenced Texture Loading
Partial update to work with shaders directly

More Edits

More changes

more shader fixes

More Fixes Compiling, reference load still wrong

Added Feedback & things are working

Logging Fixes

Log Fix

More Fixes

Added Feedback Logging

Fixes for file pathing in Linux

Fix GLCore and Crash in QT Saving

Code Cleanup

Removed Unused Function filepath.c

Code Cleanup
2020-12-26 21:09:27 -05:00
Autechre 9e6ee680b6
Revert "Windows long paths fix" 2020-12-24 16:40:15 +01:00
Autechre b58793cf91
Merge pull request #11738 from SimpleTease/utf8
fopen_utf8: nullptr crashfix
2020-12-23 15:53:05 +01:00
Autechre 242ad14bd3
Merge pull request #11728 from mpalomas/windows-long-paths
Windows long paths fix
2020-12-23 15:52:41 +01:00
Michaël Palomas 7e5174eb72 applied comments from PR: fixed comment style and moved variable declarations at the top 2020-12-23 09:44:31 +01:00
SimpleTease d2916dcd53
fopen_utf8: nullptr crashfix 2020-12-23 03:26:29 +00:00
Michaël Palomas 5fb77796f0 forgot to include retro_miscellaneous.h for PATH_MAX_LENGTH 2020-12-22 15:47:30 +01:00
Autechre 5fb24737d0
Merge pull request #11726 from SimpleTease/netplay_1
net_ifinfo: crashfix  (Windows)
2020-12-22 11:27:09 +01:00
Michaël Palomas adbfce14f2 Fixed issue with long paths > 260 chars on Windows 2020-12-22 10:27:45 +01:00
SimpleTease 03c5c240a6
net_ifinfo: crashfix (Windows)
get correct size from GetAdaptersAddresses
2020-12-22 02:48:57 +00:00
twinaphex 2ed59ea789 Turn this into macro 2020-12-21 20:25:18 +01:00
twinaphex 870707dbe8 Remove obsolete __CELLOS_LV2__ references - use PSL1GHT instead 2020-12-19 15:32:26 +01:00
twinaphex 572e263d20 Updates 2020-12-13 21:21:21 +01:00
Autechre 12dc69c501
Merge pull request #11666 from gouchi/finnish
intl: Add Finnish language
2020-12-12 21:45:06 +01:00
jdgleaver e330b67003 RZIP command line tool: Use correct executable extension + silence warnings on Windows 2020-12-11 13:21:55 +00:00
jdgleaver 73c53b63bf RZIP command line tool fixes 2020-12-11 11:00:19 +00:00
Bernhard Schelling 3de2c290fe
Mark function possibly unused to suppress warning
Add attribute to avoid the warnings "rbuf__grow' defined but not used [-Wunused-function]" (GCC/Clang) and "unreferenced local function has been removed" (MSVC).
2020-12-10 09:35:08 +09:00
twinaphex c2a73a6921 remove unused variables 2020-12-09 22:06:02 +01:00
gouchi a7bdabd133 intl: Add Finnish language 2020-12-05 22:10:29 +01:00
jdgleaver 42848bc4d7 Add Wii build to .gitlab-ci.yml 2020-12-04 11:01:34 +00:00
jdgleaver 734cb2ff31 (libretro-common) Add command line tool for creating/extracting RZIP files 2020-12-01 11:05:11 +00:00
Jake Stine ad12cc089c Improved code quality of retro_assert macro
Macros without do{}while() wrapping behave more like regular C expressions. The macro can now be nested/embedded inside of other similar compound statements and conditionals without introducing syntax errors. This change has no risk of negatively impacting existing code.
2020-11-25 10:16:19 -08:00
SimpleTease 8017ecd2b8 ibxm: update to 20191214
- Fix music playback (sample skipping)
- Add more platforms
- Fix Mr. Boom music
2020-11-21 20:30:19 +00:00
Bernhard Schelling c594e8801d
Fix ctype style char macros with signed inputs
UTF8 byte codes are commonly stored in signed char types thus these macros could be called with negative numbers. Avoid invalid memory access by clamping the input values to 0 ~ 255 with an unsigned char cast.
2020-11-19 23:42:05 +09:00
David Guillen Fandos bf48757a2e Add support for 64 buttons in udev gamepads
It seems only 16 were only really supported anyway due to the
usage of BITS_COPY16_PTR (which only copies 16 bit states)?
2020-11-18 19:29:46 +01:00
twinaphex 3a0c5cc666 (UWP) Fix regression in dylib 2020-11-18 01:44:32 +01:00
Alcaro ac2fe3896e
Fix backwards condition in socket blocking behavior
Fixes #11557
2020-11-16 18:28:37 +01:00
jdgleaver cef6707304 Clarify usage of 'RETRO_ENVIRONMENT_GET_RUMBLE_INTERFACE' callback 2020-11-12 16:47:35 +00:00
HyperspaceMadness 5008ac6eb0
Merge branch 'master' into Shader_Save_Load 2020-11-10 17:05:23 -05:00
jdgleaver 317ad3181d (config_file) Enable saving of changed parameters when '#include' directives are used 2020-11-09 11:18:49 +00:00
jdgleaver 5c50d2f389 (RXML) Fix memory leak 2020-11-06 17:40:32 +00:00
HyperspaceMadness f6e35420bc Simple Shader Save Cleanup 2020-11-02 21:07:20 -05:00
twinaphex 3fdf93a273 Update libretro-common 2020-11-01 17:22:32 +01:00
HyperspaceMadness 70bf90c5d8 Shader_Preset_Simple_Save_Cleaned_2020_11_01 2020-11-01 09:18:40 -05:00
twinaphex a2a58147e7 Update libretro-common 2020-10-31 06:22:10 +01:00
Bernhard Schelling f6f8d3e235 Replace rapidjson parser/writer in discord-rpc with rjson 2020-10-29 16:55:23 +09:00
twinaphex a38bd6d71a (UWP) Buildfix 2020-10-28 19:16:27 +01:00
Bernhard Schelling cc1937a3af
Fix possible output corruption in rjson
Was possible when translation service was adding a base64 encoded string with a length less than 1536 characters.
Introduced in commit c20b01e9e1.
2020-10-26 10:44:04 +09:00
Bernhard Schelling c20b01e9e1 Replace custom JSON parser/writer in translation service with rjson 2020-10-25 21:43:30 +09:00
twinaphex ee474b4feb Add missing string.h header include 2020-10-24 17:01:55 +02:00
jdgleaver 3e52f318d5 AI Service fixes 2020-10-22 15:59:26 +01:00
jdgleaver af6c2d6969 Add API extension for overriding frontend audio latency 2020-10-20 15:37:34 +01:00
jdgleaver 4961252a7a Add API extension for cores to monitor frontend audio buffer occupancy 2020-10-17 15:06:03 +01:00
twinaphex 24392446af Assume HAVE_THREAD_ATTR cannot be defined for Emscripten 2020-10-15 06:40:37 +02:00
Bernhard Schelling b90ce9b451
Fixes for Clang warnings 2020-10-12 05:25:12 +09:00
Bernhard Schelling c0cb3373e3
Fixes for CXX_BUILD 2020-10-12 04:30:45 +09:00
schellingb ba1ed2da4b New faster json parser/writer library rjson
Replace existing libraries jsonsax_full and jsonsax with it
2020-10-12 03:02:20 +09:00
Justin Weiss 1ee7b71884 [3DS] Use the CondVar API for condition variables
The pthread wrapper uses semaphores to simulate condition variables,
but it is easy to hit the 3DS' limit of available semaphores. libctru
2.0 supplies a lightweight condition variable API. We will use that
when it exists, and backport it when it doesn't.
2020-10-10 19:31:08 -07:00
jdgleaver b431285819 (GEKKO) Remove trailing slash when calling retro_vfs_stat_impl() 2020-10-05 15:16:58 +01:00
Autechre a033f4ab62
Merge pull request #11414 from jdgleaver/cdrom-strcasestr
libretro-common/cdrom: Add missing compatibility header
2020-10-05 14:20:01 +02:00
jdgleaver 3c06a907ca Fix directory creation on GEKKO platforms when path contains a trailing slash 2020-10-05 10:59:55 +01:00
jdgleaver 6c8c8b73f2 libretro-common/cdrom: Add missing compatibility header 2020-10-05 10:28:45 +01:00
twinaphex 0ad9175d77 (sinc resampler) We don't need to keep fetching these variables
within this inner loop
2020-10-03 21:20:32 +02:00
twinaphex 66deef29c6 Cleanups/style nits 2020-10-02 21:10:07 +02:00
twinaphex c6f5973281 Replace while(true) with for(;;) 2020-10-02 21:02:59 +02:00
twinaphex f84c6ec8cd Use STRLEN_CONST where possible; and don't needlessly do strlen
twice
2020-10-02 20:57:29 +02:00
twinaphex 7e597c3fd0 Cleanups 2020-09-30 15:47:03 +02:00
twinaphex 3072342b2c Backport libretro-common changes 2020-09-30 14:50:17 +02:00
twinaphex c744baeb89 Add ctype variants to stdstring and use it in RA 2020-09-27 22:15:32 +02:00
jdgleaver 3d4ddebcaf Add several LCD-effect video filters 2020-09-24 16:11:07 +01:00
twinaphex 0e49f058f3 Use strcpy_literal in more places 2020-09-19 23:59:06 +02:00
twinaphex 1296fc4745 use strlcpy_literal for string literal copies 2020-09-19 23:28:01 +02:00
Autechre a7a28906d3
Merge pull request #11344 from Alcaro/master
Add BearSSL support, as alternative to mbedTLS
2020-09-19 15:07:30 +02:00
Alcaro 18f46e65ea Add BearSSL support 2020-09-19 00:31:36 +02:00
Alcaro c7669fdce5
Fix --enable-debug build
libretro-common/audio/audio_mixer.c:195:32: error: unknown type name ‘rwav_t’
 static bool wav_to_float(const rwav_t* wav, float** pcm, size_t samples_out)
                                ^~~~~~

plus about 500 errors when trying to use that struct
2020-09-18 21:45:32 +02:00
twinaphex c2cd39379a (gfx_widgets.c) Put FIFO queue on stack 2020-09-18 02:18:21 +02:00
Autechre 33a04a794f
Merge pull request #11312 from justinweiss/3ds-enable-threading
[3DS] Enable threading and add a threaded audio driver
2020-09-10 06:50:12 +02:00
Autechre 2d3c63f545
Merge pull request #11248 from justinweiss/update-libctru
[3DS] Update to libctru 2.0
2020-09-10 06:49:54 +02:00
Justin Weiss fb9aa961b7 [3DS] Increase file buffer size and savestate chunk size 2020-09-09 18:29:47 -07:00
jdgleaver 5a0dc5524d Fix string_list memory leaks 2020-09-08 14:58:49 +01:00
M4xw bad97e29d2 Fix Regression caused by 023fd4f3 2020-09-04 20:56:26 +02:00
twinaphex 318ac1f667 (filebrowser_parse) Use non-heap allocated string_list functions 2020-09-04 06:29:30 +02:00
twinaphex 047efd2cd4 Revert "Resync"
This reverts commit f28056364a.
2020-09-01 17:43:22 +02:00
twinaphex f28056364a Resync 2020-09-01 17:06:52 +02:00
twinaphex 11719badcb Simplify mb_to_mb_string_alloc 2020-08-29 05:21:48 +02:00
Justin Weiss f53c137459 [3DS] Enable threading 2020-08-27 19:36:39 -07:00
Justin Weiss cb2c2c530c Update libretro-common ctr_pthread.h
Older devkitARM toolchains incorrectly prevent _pthreadtypes.h from being included. Newer versions include it.

In order to make a version of ctr_pthread.h that works under both old and new toolchains, the typedefs are guarded by a define in _pthreadtypes.h that is only active if the other types are defined.

I've also added casts in order to make sure this compiles correctly with the standard pthread.h type definitions.
2020-08-27 08:36:39 -07:00
twinaphex 022fa54236 Nit 2020-08-27 15:22:40 +02:00
twinaphex c51959d45b Make net_http_urlencode thread-safe 2020-08-27 15:21:22 +02:00
Justin Weiss 9ae2514009 [3DS] Update to libctru 2.0
Set USE_CTRULIB_2=1 to build with libctru 2.0. When unset, this code
is compatible with the older toolchain.

Some 2.0 changes addressed rare problems in earlier versions:

- Save / restore stack pointer for init / exit
  Otherwise, it could be outside of the range we deallocate.
- Run aptMainLoop in the audio driver to react correctly to sleep events

Other changes for 2.0:

- Remove ninjhax1 -- requires outdated APIs that have been removed
- Switch from __sync_arbiter to syncArbitrateAddress
- Use implicit gxCmdBuf
- Use gpuPresentBuffer for double buffering
2020-08-26 19:08:12 -07:00
twinaphex 044209bc5a Create string_separate_noalloc 2020-08-26 23:46:16 +02:00
twinaphex 61c94fe248 Simplify string_list_new/string_list_initialize 2020-08-26 17:50:18 +02:00
jdgleaver 7a07cc1305 Fix 'Set Core Association' regression 2020-08-26 15:18:39 +01:00
twinaphex e2c277d2ea (libretro-common) Cleanups 2020-08-26 15:13:48 +02:00
twinaphex 74fc0ba494 Buildfix 2020-08-26 15:06:34 +02:00
twinaphex 662e37f670 Replace more instances of string_split 2020-08-26 13:35:05 +02:00
twinaphex 6df62bbccc Create string_split_noalloc 2020-08-26 03:20:42 +02:00
twinaphex a32d027f76 string_list_initialize - call deinitialize when function fails 2020-08-26 02:28:10 +02:00
twinaphex ad61d8ff92 Simplify config_get_entry 2020-08-26 02:17:37 +02:00
twinaphex 54dfaaa3bc Simplify config_get_bool 2020-08-26 01:37:57 +02:00
twinaphex 48f2612223 (config_file) config_set - some of the char arrays were too big
for the type in question
2020-08-25 20:58:55 +02:00
twinaphex 1d53f3ca29 Move static functions to the top 2020-08-25 18:38:12 +02:00
twinaphex 6cc8a2acbd Rewrite config_file_new_from_string 2020-08-25 18:37:14 +02:00
twinaphex d573a802c4 Simplify config_file_new_alloc 2020-08-25 18:12:28 +02:00
twinaphex f454665be2 Optimize config_file_exists 2020-08-25 18:10:32 +02:00
twinaphex 2c0fb6ff6c config_file_parse_line - put sub_conf on stack 2020-08-25 17:54:22 +02:00
twinaphex 6a88b3f20e Cleanup strlen_size 2020-08-25 17:24:03 +02:00
Autechre ed6f32fd80
Merge pull request #11240 from jdgleaver/string_list-safety
(string_list) Add checks to prevent undefined behaviour
2020-08-25 16:59:22 +02:00
jdgleaver 179e77c8b0 (string_list_join_concat) Prevent undefined behaviour if input string buffer is unterminated 2020-08-25 15:54:18 +01:00
twinaphex 79c8a94857 (config_file.c) config_set_string - simplify 2020-08-25 15:50:26 +02:00
twinaphex 7771dbd594 Rename config_file_new_internal to config_file_load_internal 2020-08-25 15:36:26 +02:00
twinaphex cd0a27680a (config_file.c) Cleanup 2020-08-25 15:34:11 +02:00
twinaphex 5a69e6e75c Simplify config_file.c code 2020-08-25 15:29:45 +02:00
twinaphex ce185d8be6 (DSP IIR) Prevent '-Wmaybe-uninitialized' warnings 2020-08-25 13:21:22 +02:00
twinaphex b7b96fb142 (config_file) Cleanups 2020-08-25 12:39:28 +02:00
twinaphex f18af41876 Cut down on add_sub_conf 2020-08-25 12:29:08 +02:00
twinaphex 1e5ccb7319 Create config_file_get_realpath 2020-08-25 12:20:09 +02:00
twinaphex 74a3e5be8a Simplify is_path_accessible_using_standard_io 2020-08-24 23:41:10 +02:00
twinaphex 42a3d433dc Restore this code 2020-08-24 23:25:57 +02:00
twinaphex ceca44b233 Cleanup config_initialize_internal 2020-08-24 23:09:55 +02:00
twinaphex 88f01c51a7 (config_file) Cleanups 2020-08-24 22:57:08 +02:00
twinaphex b681b2af49 config_set_string: simplify 2020-08-24 21:25:55 +02:00
twinaphex a954118faf (config_file) Cleanups 2020-08-24 21:16:25 +02:00
twinaphex 4f29bef56e (config_file) Cleanups 2020-08-24 21:11:41 +02:00
twinaphex 150e96144a Cleanup 2020-08-24 20:40:49 +02:00
twinaphex dd13e6b044 (config_file.c) Use snprintf 2020-08-24 19:39:41 +02:00
twinaphex 24910b6999 (config_file) Simplify config_sort_compare_func 2020-08-24 19:29:24 +02:00
twinaphex 8a479e6006 Create dir_list_initialize/dir_list_deinitialize 2020-08-24 18:56:25 +02:00
twinaphex cde5d37eb2 Put this behind RPNG_TEST 2020-08-24 18:17:47 +02:00
twinaphex 91cfcd1b83 Improve string_list_deinitialize 2020-08-24 15:11:38 +02:00
twinaphex 2452769a80 Cleanup 2020-08-24 14:20:46 +02:00
twinaphex 64f8a5990c Create fifo_initialize/fifo_deinitialize 2020-08-24 12:17:33 +02:00
twinaphex 9caf3080b1 Cleanup 2020-08-24 12:06:56 +02:00
twinaphex 71708f8ddd (libretro-common) Add msg_queue_initialize/msg_queue_deinitialize 2020-08-24 12:04:56 +02:00
twinaphex 7a6b9fd1b2 (Ozone) Horizontal list - put on stack - it's already on heap-allocated
struct as is
2020-08-24 10:22:32 +02:00
twinaphex 93fa9a0194 Add file_list_deinitialize - does everything that file_list_free
does except for freeing the passed struct pointer
2020-08-24 01:45:45 +02:00
twinaphex 0a69d14b11 Reimplement slang_preprocess_parse_parameters 2020-08-24 00:54:24 +02:00
twinaphex cd6e1cf3fa (libretro-common) string_list - add string_list_initialize
and string_list_deinitialize - takes a pointer to initialize
and deinitialize a string list, but importantly does not
implicitly allocate and deallocate the string list pointer
itself. This way, string lists can be put on the stack instead
of always implicitly being put on heap - the struct itself is
small enough to fit on stack
2020-08-24 00:43:55 +02:00
Alcaro e4022ab416 libretro.h: Fix contradictory comment
retro_get_system_info() says it can be called even before retro_init(), which means retro_deinit() doesn't need to be called at all. Mentioning deinit() in the struct definition is misleading and incorrect.
2020-08-23 18:29:12 +02:00
Twinaphex a175af4e6a Cleanup some unused variables 2020-08-22 18:04:34 +02:00
twinaphex 503131de66 (RPNG) Cleanups 2020-08-22 17:37:34 +02:00
twinaphex f4432acd06 (RPGN) Cleanups to IHDR code 2020-08-22 17:34:13 +02:00
twinaphex 73ed02b5f6 (RPNG) Cleanup read_chunk_header 2020-08-22 17:18:32 +02:00
twinaphex d6f22a7a4c (RPNG) Simplify png_process_ihdr 2020-08-22 16:28:50 +02:00
twinaphex c7cf9d6df7 (RPNG) Simplify rpng_start 2020-08-22 16:11:54 +02:00
twinaphex 5cc4d0da0f (RPNG) Make sure we don't use stdio/fprintf unless DEBUG is defined 2020-08-22 16:07:03 +02:00
twinaphex deafd70934 (RPNG) More simplifications - get rid of png_chunk struct, just pass
uint32_t around to function
2020-08-22 15:37:21 +02:00
twinaphex 91345fe867 (RPNG) read_chunk_header - simplify code some more 2020-08-22 15:34:32 +02:00
twinaphex 8b5b472a2d Optimize read_chunk_header 2020-08-22 14:24:11 +02:00
twinaphex 2e6b87d156 Simplify rpng.c - read_chunk 2020-08-22 14:20:50 +02:00
twinaphex 99873ccd8a Reorder structs, alignment 2020-08-21 09:57:11 +02:00
twinaphex 5a8da81d07 Simplify string_set 2020-08-20 19:12:38 +02:00
twinaphex cb0a193eea Fix RPNG build failure 2020-08-19 18:20:55 +02:00
twinaphex dff52d8688 Revert "(audio conversion) Optimize array accesses"
This reverts commit 8613ece7f5.
2020-08-19 18:18:02 +02:00
twinaphex c4be485baf Revert "Optimize png_reverse_filter_copy_line_rgb"
This reverts commit aa428cc415.
2020-08-19 18:17:16 +02:00
twinaphex ae0d63ccc0 Revert "Optimize png_reverse_filter_copy_line_rgba"
This reverts commit ad3c67f275.
2020-08-19 18:16:57 +02:00
twinaphex e8170a4354 Revert "Optimize png_reverse_filter_copy_line_gray_alpha"
This reverts commit 710226504e.
2020-08-19 18:16:42 +02:00
twinaphex 7c19d4d009 Revert "Optimize png_read_plte"
This reverts commit 107b640bc0.
2020-08-19 18:16:10 +02:00
twinaphex ea5d134337 Revert "Optimize read_chunk_header"
This reverts commit 33f9ef90d8.
2020-08-19 18:15:54 +02:00
twinaphex 282d34aeb1 Revert "(RPNG) Optimize png_reverse_filter_adam7_deinterlace_pass"
This reverts commit a283b71261.
2020-08-19 18:15:24 +02:00
twinaphex 003ff126ce Revert "(RPNG) optimizations to copy_line_bw"
This reverts commit 9b29217564.
2020-08-19 18:15:08 +02:00
Twinaphex e3d77d7f28 Remove unused variable 2020-08-19 17:21:22 +02:00
twinaphex 9b29217564 (RPNG) optimizations to copy_line_bw 2020-08-19 12:07:56 +02:00
twinaphex a283b71261 (RPNG) Optimize png_reverse_filter_adam7_deinterlace_pass 2020-08-19 10:05:09 +02:00
twinaphex 33f9ef90d8 Optimize read_chunk_header 2020-08-19 09:09:38 +02:00
twinaphex 107b640bc0 Optimize png_read_plte 2020-08-19 08:58:18 +02:00
twinaphex 710226504e Optimize png_reverse_filter_copy_line_gray_alpha 2020-08-19 08:18:09 +02:00
twinaphex ad3c67f275 Optimize png_reverse_filter_copy_line_rgba 2020-08-19 08:14:23 +02:00
twinaphex aa428cc415 Optimize png_reverse_filter_copy_line_rgb 2020-08-19 08:09:17 +02:00
twinaphex 5166eebcaf for loop cleanups - use space after 'for' 2020-08-19 03:06:22 +02:00
twinaphex 8613ece7f5 (audio conversion) Optimize array accesses 2020-08-19 02:46:54 +02:00
twinaphex b39959c985 Cleanup dylib.c 2020-08-18 15:22:46 +02:00
twinaphex 624a70f062 More strings being moved from heap to stack 2020-08-18 14:47:57 +02:00
twinaphex 216190b826 Clean up more string variables on heap - move to stack 2020-08-18 14:26:15 +02:00
twinaphex c81d06d0a1 Reorder structs, alignment 2020-08-17 15:09:19 +02:00
Alcaro df2db8bceb
stdstring: Delete duplicate function 2020-08-16 02:33:25 +02:00
twinaphex b69ceaea1b Reorder structs, alignment 2020-08-16 01:07:42 +02:00
Alcaro 37efa9d52e
rpng: delete "unused" png_chunk member
also fix a rather ugly buffer overflow that relies on the unused member existing and being null
2020-08-16 00:27:25 +02:00
twinaphex 982fbadd15 (RBMP) Reorder structs, alignment 2020-08-16 00:13:16 +02:00
twinaphex 3d2efdd2ef (RJPEG) reorder structs, alignment 2020-08-16 00:09:10 +02:00
twinaphex f48dc0ff5b Reorder structs, alignment 2020-08-15 20:38:31 +02:00
twinaphex 3ec21b292c Reorder structs, alignment 2020-08-15 01:18:23 +02:00
twinaphex a8646a2610 Reorder structs, alignment 2020-08-15 00:44:35 +02:00
twinaphex 7642cf5fa5 Struct reorders/alignment 2020-08-14 22:54:46 +02:00
twinaphex 4c0d9bc68d Struct reordering/alignment 2020-08-14 21:19:32 +02:00
twinaphex 659d50c916 Struct reorderings 2020-08-14 18:31:28 +02:00
twinaphex 023fd4f330 Alignment changes 2020-08-14 18:19:57 +02:00
twinaphex b3963a2897 Struct alignment changes 2020-08-14 18:03:09 +02:00
twinaphex d0b68ee838 (RPNG) Struct alignment changes 2020-08-14 17:54:03 +02:00
twinaphex b4dc19d7aa (RPNG) Cleanups 2020-08-14 17:49:33 +02:00
twinaphex 18cb55e207 Remove dynarray.h - rbuf.h replaces it 2020-08-14 16:09:13 +02:00
twinaphex f3b440bab9 Some struct reordering 2020-08-14 07:07:34 +02:00
jdgleaver b19eb64329 (m3u_file) Replace static entries array with dynamic array via RBUF library 2020-08-13 17:25:45 +01:00
Bernhard Schelling 48fabb7f88 Simplify gfx_animation by switching from dynarray to RBUF 2020-08-13 05:23:32 +09:00
jdgleaver 81bf22c3fb RETRO_ENVIRONMENT_GET_INPUT_MAX_USERS: Clarify variable update frequency comment 2020-08-11 14:54:22 +01:00
jdgleaver ee8a2f4268 Add API extension for cores to query the number of active inputs provided by the frontend 2020-08-11 14:07:00 +01:00
twinaphex 4092fd7e83 Minor cleanup 2020-08-11 06:35:12 +02:00
Érico Rolim 057dd563aa [linux] Add missing include in nbio_linux.c.
On musl-libc, the compiler would print a warning for nbio_linux.c:
"warning: 'struct timespec' declared inside parameter list will not be
visible outside of this definition or declaration", indicating a missing
header defining this structure.

On glibc, this definition is provided through the stdlib header.
2020-08-10 00:33:43 -03:00
Bernhard Schelling 4a09907802
Return true when RBUF_TRYFIT is called with 0 2020-08-07 05:19:09 +09:00
Bernhard Schelling 0a67c0416a Change playlist to use dynamic array
Instead of initial 12MB memory allocation, use a dynamically growing array.
This shares the container structure (now called rbuf) with the explore menu.
2020-08-07 03:27:52 +09:00
twinaphex 3680804217 Undo path_basedir_size 2020-08-04 03:05:20 +02:00
twinaphex 4a6f49fc0a (360) Fix build 2020-08-03 22:35:10 +02:00
twinaphex c5b9786675 Turn retro_sleep into macros for most systems 2020-08-03 20:11:00 +02:00
twinaphex f35010e1ae Cleanups 2020-08-02 10:28:23 +02:00
twinaphex 8a24cc350e Resync 2020-08-01 22:55:08 +02:00
twinaphex 97297f71af (MSVC 2005) MSVC 2005 and earlier cannot use nbio_windowsmmap.c -
so disable it
2020-08-01 22:51:23 +02:00
twinaphex 6f0874f2b1 Silence warning 2020-08-01 18:26:20 +02:00
twinaphex aba17fdc92 Warning fix 2020-08-01 18:18:09 +02:00
twinaphex cd9ea1f44b Another warning fix 2020-08-01 18:16:19 +02:00
twinaphex 4ee45304b0 More warning fixes 2020-08-01 18:14:48 +02:00
twinaphex 3635bf0d01 Silence some warnings 2020-08-01 18:04:56 +02:00
Jamiras 92e61ccb5c move temporary buffer off stack 2020-07-29 19:54:48 -06:00
twinaphex 4f931f2729 Use UINT32_C / UINT64_C throughout the codebase 2020-07-29 04:48:11 +02:00
twinaphex eba83390ba Warning fixes 2020-07-23 07:39:08 +02:00
twinaphex fa6d5333f7 More silencing of warnings 2020-07-23 06:39:21 +02:00
twinaphex 98516280ad (s16_to_float) Silence aggressive-loop-optimization undefined
behavior because of potential signed integer overflow
2020-07-23 06:35:30 +02:00
Francisco Javier Trujillo Mata 8334be07bf Fix issue with the PS2 and PRI_SIZET 2020-07-21 10:17:16 +02:00
Autechre 343a04e2b8
Merge pull request #11027 from schellingb/archive_cleanup_1b
Use MMAP again for ZIP loading/parsing
2020-07-16 03:28:54 +02:00
Bernhard Schelling b03cdbd0da First set of cleanups to archive handling (Rev B)
- Don't read the entire archive file into memory on systems without HAVE_MMAP
- Support ZIP files between 2GB ~ 4GB on 32bit architectures
- Remove zip exclusive members from `file_archive_transfer`
- Add `zip_context_t` for zip like the already existing `sevenzip_context_t`
- Unify cleanups of zip and 7z in `file_archive_file_backend::archive_parse_file_free`
- Handle some sizes and offsets as int64_t (preparation for future Zip64 support)
- Handle ZIP compression methods in `zlib_stream_decompress_data_to_file_init` not in `file_archive_perform_mode`
- Return progress of 7z iterating with `file_archive_parse_file_progress`
- Uses MMAP where available, for files up to 256MB
2020-07-16 02:47:59 +09:00
Twinaphex 367530683c Get rid of unused variables 2020-07-15 19:47:45 +02:00
twinaphex 06064a0527 Revert "Bring back MMAP support"
This reverts commit 32dcff3880.
2020-07-13 23:52:23 +02:00
twinaphex c84aa90075 Merge branch 'archive_cleanup_1' of git://github.com/schellingb/RetroArch 2020-07-13 21:30:02 +02:00
Bernhard Schelling 32dcff3880 Bring back MMAP support
Will be used where available for files up to 256MB
2020-07-14 03:04:01 +09:00
Bernhard Schelling c05f1e91fc Fix another memory leak that was there originally
When loading a single file out of a ZIP with many files it leaked memory allocated for all found filenames that weren't requested.
2020-07-14 03:00:47 +09:00
Bernhard Schelling a978b939ff Fix C89 build 2020-07-14 01:56:48 +09:00
Bernhard Schelling 54db0fe515 Fix memory leak
Properly release buffers for extracted files from ZIP
Use RETRO_VFS_SEEK_POSITION_START instead of SEEK_SET for filestream_seek
2020-07-14 00:29:46 +09:00
twinaphex 750140779c (libretro-common) Fix 2020-07-13 16:18:46 +02:00
Autechre 84ca79fcc1
Merge pull request #11006 from Jamiras/save_task_wait
only wait for save task to complete
2020-07-12 19:14:04 +02:00
Jamiras 6f964681ae update comment 2020-07-12 08:21:02 -06:00
twinaphex be0148406e fill_pathname_application_dir - cleanup 2020-07-11 19:45:24 +02:00