Commit Graph

3276 Commits

Author SHA1 Message Date
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