Commit Graph

65495 Commits

Author SHA1 Message Date
github-actions dddc66c797 Fetch translations from Crowdin 2025-07-18 00:17:38 +00:00
libretroadmin b23cbf0a57 glslang_read_shader_file - small cleanup 2025-07-18 01:58:40 +02:00
libretroadmin 2f5d95b0cf Move non-essential string_list functions out of file 2025-07-18 01:43:03 +02:00
libretroadmin 9ca8e1c1c1 * Change variable names for characters being written
* menu_cbs_sublabel - skip some unnecessary copies
2025-07-18 00:00:43 +02:00
libretroadmin ae2465f0db Variable name changes 2025-07-17 23:41:27 +02:00
libretroadmin d822cf58a1 C89_BUILD buildfix 2025-07-17 23:03:59 +02:00
libretroadmin ab9535c827 Code analysis cleanups/fixes 2025-07-17 22:28:48 +02:00
libretroadmin dd480aac94 Silence some more code analysis warnings 2025-07-17 12:33:47 +02:00
libretroadmin 4c07e26649 Code analysis fixes - fix some warnings and prevent garbage data 2025-07-17 12:11:31 +02:00
libretroadmin 162d00d73b (libretro-db) Fix code analysis warning 2025-07-17 10:29:58 +02:00
libretroadmin 7b093cc55e More code analysis warning fixes 2025-07-17 10:00:39 +02:00
libretroadmin 195c19a1c9 Fix more static code analysis errors/warnings 2025-07-17 09:44:19 +02:00
libretroadmin 03573db27c Some more static code analysis warning fixes 2025-07-17 09:09:30 +02:00
libretroadmin f45fd77d68 Fix errors and warnings pointed out by static code analysis (Clang) 2025-07-17 08:49:53 +02:00
libretroadmin c6d72062e2 remove dead code 2025-07-17 08:02:06 +02:00
LibretroAdmin 3f4fd3b086
Merge pull request #18099 from JoeOsborn/replay-same-timeline-check
Add "same timeline check" and "future state check" for replays
2025-07-17 07:17:54 +02:00
LibretroAdmin b7479e934b
Merge pull request #18092 from JoeOsborn/replay-compress-checkpoints
Compress checkpoints in replays
2025-07-17 07:17:46 +02:00
libretroadmin efc1f7f8e1 Variable naming cleanups 2025-07-17 06:10:48 +02:00
libretroadmin 807866d799 Style nit 2025-07-17 05:54:24 +02:00
libretroadmin daeb46cf5a Variable name cleanups 2025-07-17 05:36:20 +02:00
libretroadmin cc826c4ca6 Cleanup some variable names and some other cleanups 2025-07-17 05:11:00 +02:00
libretroadmin d8725d77bb Small variable cleanups - should make no functional difference 2025-07-17 04:40:42 +02:00
Joseph C. Osborn 7c05359933 c89 fixes 2025-07-16 10:35:33 -07:00
Joseph C. Osborn 1cc76cd64d Add "same timeline check" and "future state check" for replays
When loading and saving states taken during a replay, their contents
should be compared with the current replay.

- If in playback mode, states from past the end of the current replay
should be disallowed, as should states from an alternate timeline of
the current replay (inconsistent input history)
  - This is because in playback mode, RA replays are read-only
- If in recording mode, states from the future or from another
timeline should overwrite the current replay's data with a warning
- In either playback or recording, loads of states from the past that
have a consistent series of inputs (same timeline) should be loaded
and the replay should be rewound (and truncated in case of recording)

This behavior is as specified in
https://tasvideos.org/LawsOfTAS/OnSavestates

The existing code only implemented some of these checks.
2025-07-16 10:09:09 -07:00
sonninnos 19f6d94a78 Limit core suggestion option only for dynamic platforms 2025-07-16 06:16:43 +03:00
LibretroAdmin df808f7663
Merge pull request #18095 from libretro/libretro-common-refactors
libretro-common refactors: file_path
2025-07-16 04:37:43 +02:00
github-actions c8cb58f1d2 Fetch translations from Crowdin 2025-07-16 00:17:38 +00:00
libretroadmin 2770470695 Rewrite find_last_slash - use one loop, skip two strrchr calls 2025-07-16 01:31:29 +02:00
libretroadmin 047f926540 use last_slash in file_path 2025-07-16 00:31:09 +02:00
libretroadmin d37068cfb8 Move code back 2025-07-15 23:35:37 +02:00
LibretroAdmin 3162b6a438
Merge pull request #18094 from pastalian/fix-disable-pipewire
Fix build with disable-pipewire on systems with pipewire installed
2025-07-15 18:35:53 +02:00
Takuya Wakazono 027564a0c9 Fix build with disable-pipewire on systems with pipewire installed
On systems where pipewire is installed but the build is configured with
--disable-pipewire, HAVE_PIPEWIRE_STABLE is set to 1 while HAVE_PIPEWIRE
is 0. Checking only HAVE_PIPEWIRE_STABLE leads to a build failure.

```
LD retroarch
/usr/lib/gcc/x86_64-pc-linux-gnu/15/../../../../x86_64-pc-linux-gnu/bin/ld: obj-unix/release/camera/camera_driver.o:(.data.rel+0x0): undefined reference to `camera_pipewire'
collect2: error: ld returned 1 exit status
```

Downstream Bug: https://bugs.gentoo.org/960043
2025-07-15 23:27:10 +09:00
Joseph C. Osborn 1e0c723ba3 Fix warnings under many platforms, unpack nested ifdefs in includes. 2025-07-15 07:25:09 -07:00
libretroadmin 14906fc489 Revert "- Cut down on strrchr calls inside loops"
This reverts commit f73d9dead3.
2025-07-15 09:30:13 +02:00
github-actions 6010c74559 Fetch translations from Crowdin 2025-07-15 00:17:55 +00:00
Joseph C. Osborn 6227156e73 Add new replay token type CHECKPOINT2
This can optionally encode and compress checkpoints.  For now, only
raw encoding is supported, but e.g. delta encoding, block-based
encoding, or deduplicated encoding could be supported in the future.

Three compression schemes are included (selected automatically based
on compilation flags): ZSTD, ZLIB, or NONE.

All three schemes are supported for decompression if available.

For compression, ZSTD is preferred over ZLIB is preferred over NONE.
2025-07-14 14:32:53 -07:00
Joseph C. Osborn 46be205b75 add zstd compression library (single-threaded only) 2025-07-14 14:32:48 -07:00
libretroadmin f73d9dead3 - Cut down on strrchr calls inside loops
- Replace string_replace_all_chars calls
2025-07-14 22:31:36 +02:00
LibretroAdmin 6fa73c3431
Merge pull request #18090 from JoeOsborn/fix-replay-rewind
fix three bugs with replays and rewinding
2025-07-14 19:31:53 +02:00
LibretroAdmin ad5a98f2d3
Merge pull request #18091 from JoeOsborn/emscripten-makefile-includedirs
Emscripten makefile should use INCLUDE_DIRS from Makefile.common
2025-07-14 19:31:30 +02:00
libretroadmin 4099b49483 (menu_cbs_title) SANITIZE_TO_STRING rewrite:
* Turn macro into function
* Don't use strchr (O(n^2), switch to single pass loop instead
2025-07-14 19:13:11 +02:00
libretroadmin 6e5e63b6d4 Reduce some strrchr double calls 2025-07-14 19:05:11 +02:00
libretroadmin 1cc0f3273f (file_path) Optimize find_last_slash:
* Do one loop iteration inside the function instead of two
strrchr(s) for finding the forward and backwards slash
2025-07-14 18:44:49 +02:00
libretroadmin 9b6641c951 (file_path) fill_pathname_join_special - small tweak 2025-07-14 17:37:33 +02:00
libretroadmin 2d632fed54 file_path changes:
* improve fill_pathname_slash, no longer call strlcat
  - strlcat call would have been done in strlcat regardless
2025-07-14 17:26:15 +02:00
Joseph C. Osborn 246caaec3f Emscripten makefile should use INCLUDE_DIRS from Makefile.common
With this change, HAVE_ZSTD or HAVE_CHD can successfully be set for
emscripten builds.

This mirrors how other Makefiles use Makefile.common.
2025-07-14 08:19:57 -07:00
Joseph C. Osborn 27f141a7a5 fix some bugs with replays and rewinding
- rewinding past the start clobbers part of the header
- during recording & rewind, should not push input events
- during recording or playback, getting to the end of the rewind
  buffer should not halt the movie
2025-07-14 08:09:25 -07:00
libretroadmin 3eb8589550 (file_list) Optimizations:
* file_list_insert - use memmove instead of malloc to add new
file item on top of the existing one
2025-07-14 17:04:44 +02:00
libretroadmin 9cfcc5ec8e Revert video_coord_array code 2025-07-14 06:00:44 +02:00
libretroadmin 215219dc51 Change libretro-common code back 2025-07-14 05:50:17 +02:00