Commit Graph

64670 Commits

Author SHA1 Message Date
Joe Osborn f2a86f34d1
Remove unnecessary rigmarole around importing the script as a blob (#17642) 2025-03-01 17:34:05 -08:00
sonninnos 23170b82ec
Add MIDI device menu item dropdowns (#17645) 2025-03-01 17:33:46 -08:00
github-actions 7cb27c965d Fetch translations from Crowdin 2025-03-02 00:16:20 +00:00
sonninnos 5c92055aef Fix cloud sync driver menu item refresh 2025-03-01 11:47:53 +02:00
Viačasłaŭ 6bfe3fcb43
(Win32) Unrevert TTS fallback (#17643)
Originally implemented in 274d47f
2025-03-01 01:04:29 -08:00
sonninnos 6a717fd44c Better way to count dropped frames 2025-03-01 10:40:59 +02:00
github-actions b3e2d5213d Fetch translations from Crowdin 2025-03-01 00:17:26 +00:00
Joseph C. Osborn c29cd046d0 Fixes asset paths/double bundle path for web player 2025-02-28 18:44:31 +01:00
sonninnos aaa7b272aa XMB: Gray theme color correction 2025-02-28 08:44:37 +02:00
zoltanvb 31de40b32a
Align GDI feature reporting with actual status (#17635)
Value of HAVE_GDI is always 1 unless explicitly disabled, however
it only takes effect on Windows platforms. Actual functionality
is behind multiple #ifdef's, but the feature indication was showing
up even on platforms like Linux.
2025-02-27 20:15:43 -08:00
sonninnos b62cc87e84
Turbo Fire overhaul (#17633) 2025-02-27 20:15:22 -08:00
Joe Osborn 7a7c208c85
Only read first frame of inputs under new movie formats (#17634) 2025-02-27 20:15:14 -08:00
zoltanvb 9970d45367
Make autoconfig failure notifications optional. (#17636)
Introduce a new setting that controls autoconfiguration messages
when the config fails, either with fallback or without.
2025-02-27 20:15:06 -08:00
Joe Osborn fa6d622031
Cancel bootup main loop before starting regular mainloop (#17638) 2025-02-27 20:14:57 -08:00
zoltanvb 8396d8e626
Fix bluetooth option ifdef (#17639) 2025-02-27 20:14:49 -08:00
github-actions e9dd1731ee Fetch translations from Crowdin 2025-02-28 00:14:51 +00:00
github-actions 62f32e5f63 Fetch translations from Crowdin 2025-02-26 00:15:19 +00:00
github-actions e16953b9af Fetch translations from Crowdin 2025-02-25 00:14:55 +00:00
Joe Osborn c413bcc626
Threaded emscripten fixes (#17614)
* Actually read CLI args in emscripten

* Fix fetchfs manifest parsing, increase download chunk size

The chunk size should probably be made a parameter in the future.  The
larger chunk size trades longer hitches for fewer hitches.

* Add exec command driver and API functions for emscripten.

Under WASMFS, stdin/stdout can't be customized the way they can with
the JS FS implementation.  Also, this approach frees up stdin/stdout
and simplifies interaction with the command interface for web embedders.

* fixup upload paths, show use of new emscripten cmd interface

* Add JS library function names to EXPORTS as well as EXPORTED_FUNCTIONS for older emsdk versions
2025-02-24 09:25:05 -08:00
github-actions 55b59262b9 Fetch translations from Crowdin 2025-02-24 00:15:28 +00:00
Bernhard Schelling b725de086e
Fix netplay when using core netpacket interface after a recent change made for cheevos (#17619) 2025-02-23 04:26:02 -08:00
刘皓 b3376716f2
Add declaration for `libnx_apply_overclock()` in menu/menu_driver.c (#17620) 2025-02-23 04:25:49 -08:00
刘皓 c9ed5df025
Add PS3 build to GitHub Actions (#17621) 2025-02-23 04:25:39 -08:00
Eric Warmenhoven 84eb4f32e0
Small adjustment to coordinating mouse inputs (#17622) 2025-02-23 04:25:29 -08:00
sonninnos 4de34208ed Ozone: Messagebox font fix 2025-02-22 22:31:47 +02:00
github-actions b5fd91972c Fetch translations from Crowdin 2025-02-22 00:13:39 +00:00
sonninnos 3c1a1a44ae
Vulkan: Add adaptive vsync support (#17611) 2025-02-21 12:34:32 -08:00
Eric Warmenhoven f7d235f2d6
update core info list after updating core info files (#17613) 2025-02-21 12:34:06 -08:00
Hed0nium bc1bc2431d
Update AUTHORS.h: Edit name (#17610) 2025-02-21 12:33:48 -08:00
Eric Warmenhoven e26b3bca4e
allow mouse input while mouse overlay is active (#17615) 2025-02-21 12:33:27 -08:00
Eric Warmenhoven 273eb7bd7b
fix sublabel on "add to playlist" in quick menu (#17616) 2025-02-21 12:33:18 -08:00
Joe Osborn 9005e1b9fe
Use correct key into message data to get last asset fetch time (#17607) 2025-02-21 07:40:49 +01:00
sonninnos 61de3a3260
Integer scaling improvements (#17606) 2025-02-20 19:51:19 +02:00
sonninnos fce67c1fab
Use core fps instead of display rate when counting dropped frames (#17605) 2025-02-20 14:10:08 +02:00
sonninnos b5756a1b20
Prevent crash when Main Menu is empty (#17604) 2025-02-20 14:09:47 +02:00
github-actions 09a59edd6b Fetch translations from Crowdin 2025-02-20 00:14:51 +00:00
Joe Osborn 56014a27d6
Enable pthreads on Emscripten (#17586)
* workerized RA

* Workerized (non-async) web player, using OPFS

This patch eliminates the need for asyncify and uses modern filesystem
APIs instead of the deprecated, unmaintained BrowserFS.

This is a WIP patch because it won't fully work until these two
Emscripten PRs land and are released:

https://github.com/emscripten-core/emscripten/pull/23518
https://github.com/emscripten-core/emscripten/pull/23021

The former fixes an offscreen canvas context recreation bug, and the
latter adds an equivalent to BrowserFS's XHR filesystem (but without
the hazardous running-XHR-on-the-main-thread problem).

The biggest issue is that local storage of users who were using the
old version of the webplayer will be gone when they switch to the new
webplayer.  I don't have a good story for converting the old BrowserFS
IDBFS contents into the new OPFS filesystem (the move is worth doing
because OPFS supports seeking and reading only bits of a file, and
because BrowserFS is dead).

I've kept around the old libretro webplayer under
pkg/emscripten/libretro-classic, and with these make flags you can
build a non-workerized RA that uses asyncify to sleep as before:

make -f Makefile.emscripten libretro=$CORE HAVE_WORKER=0 HAVE_WASMFS=0 PTHREAD=0 HAVE_AL=1

I also moved the default directory for core content on emscripten to
not be a subdirectory of the local filesystem mount, because it's
confusing to have a subdirectory that's lazily fetched and not
mirrored to the local storage.  I think it won't impact existing users
of the classic web player because they already have a retroarch.cfg in
place.

* Get fetchfs working without manifest support

* makefile fixes

* fix scaling, remove zip dependency

* Support asset/cheats/etc downloaders for emscripten

- Add http transfer support for emscripten
  - At the task_http level, not the net_http level --- so no netplay
    or webdav.
- Change default paths to be more like other platforms
- Gives us smaller bundles and a faster boot time
- Had to work around a task queue bug on Emscripten
  - I made the smallest possible change to do it, but it may be better
    to fix in rthread.c

* Load an emscripten file_packager package on first run

If no ozone assets are present, load a libretro_minimal package
created using Emscripten's built-in file packager.

* updated readme, removed indexer from wasmfs libretro-web

* Put back zip dependency, load asset bundle into opfs on first run

* fix upload path

* Remove unused function

* easy testing setup for two multithreaded conditions

1. make PROXY_TO_PTHREAD=1 (slower)
2. make PROXY_TO_PTHREAD=0 (bad audio, because doesn't sleep in
openal.c)

* Remove condition on sleep in openal

also make input_driver check existence of drv->axis, drv->button
before calling them.

* Fix resizing under EGL

* Don't force config file path on emscripten

* Add time.h include to netplay, default HAVE_NETPLAYDISCOVERY to 0

* Remove nearly all proxied joypad calls under emscripten

* Fix file uploads under firefox

* Fix safari API uses, but Safari still hangs in OPFS filesystem mount

I think this can be fixed by moving the backend creation off the main
thread.

* Move filesystem init into emscripten C entry point

* Setup filesystems off of main thread

* re-set default player to async

Also improve Safari compatibility under proxy-to-pthread condition

* Safari upload file fixes

* Remove some excess prints

* Fix typo
2025-02-20 00:59:25 +01:00
Eric Warmenhoven 6ec4ffb2fa
apple, mouse overlay: fix relative mouse deltas (#17602)
makes sure that relative mouse movement deltas are based on last poll,
not last state check; checking state should not reset state
2025-02-20 00:59:14 +01:00
sonninnos 6c08bf003b
XMB: Title replace '/' with '-' instead of ' ' (#17603) 2025-02-19 21:49:55 +02:00
sonninnos 8f3347d9ab
GLUI: Limit save state thumbnail size (#17600) 2025-02-19 17:06:01 +02:00
sonninnos b5e01422e1
XMB: Trigger bg-image load on theme change (#17599) 2025-02-19 17:05:34 +02:00
Eric Warmenhoven 8bf7e76f45
apple: enable corelocation location driver (#17595) 2025-02-19 04:04:17 +01:00
github-actions d818cb8fe1 Fetch translations from Crowdin 2025-02-19 00:14:43 +00:00
Eric Warmenhoven 0ed66a79f1
glui: fix add to playlist icon in quick menu (#17596) 2025-02-18 22:55:04 +01:00
sonninnos e4fe551924
Gray Dark+Light theme adjustments (#17597) 2025-02-18 20:47:10 +02:00
Steve Cox 087d11b750
for iOS: updated app icon to additional iconset (#17582) 2025-02-18 17:13:13 +01:00
Eric Warmenhoven fe3e1b56b7
camera: don't reinit when core sets av info; don't poll if not allowed (#17588) 2025-02-18 17:12:18 +01:00
Joe Mattiello 9438d70ed9
Add CoreLocation location driver for macOS and iOS (#17591)
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
2025-02-18 17:12:08 +01:00
sonninnos 73abaddd9c
GLUI: Add save state thumbnails (#17592) 2025-02-18 17:11:46 +01:00
Tomáš Kelemen cd85a4dbf2
bluetoothctl: use two calls to disconnect/remove device (#17593)
the previous method does not remove the pairing of the selected device,
user must remove the pairing manually by modifying filesystem.

change tested on real system (Lakka-RPi4.aarch64).
2025-02-18 17:11:36 +01:00