Commit Graph

1681 Commits

Author SHA1 Message Date
Joe Osborn cacd5a9a23
Workerized emscripten retroarch (WIP) (#17484)
* 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
2025-01-30 19:58:18 +01:00
BinBashBanana ed1810de86
Emscripten improvements (#17422) 2025-01-29 05:29:16 +01:00
MrHuu c276577b52
(3DS) Add unique ID's (#17459)
- Anarch
- Ardens
- Dice
- DoubleCherryGB
- Fbneocps12
- Fbneoneogeo
- Numero
- Tamalibretro
- Uw8
2025-01-22 20:42:23 +01:00
Daniel Worley 565e1c7d2d
UWP: Fix slang shader compilation (#17447) 2025-01-20 22:10:57 +01:00
Eric Warmenhoven ef4512dd02
macOS: ensure bundled assets get extracted properly (#17444) 2025-01-20 21:38:29 +01:00
Eric Warmenhoven 6fda41900d
apple: include git hash in TestFlight message (#17445) 2025-01-20 21:38:20 +01:00
zoltanvb e71a1620b0
Update core list based on what is compiled for 1.20.0 stable version. (#17404) 2025-01-12 17:34:01 +01:00
zoltanvb 864ad02177
Quickfix: asset size has exceeded 4x30 MB, so now there are 5 chunks. (#17334) 2025-01-02 19:31:35 +01:00
LibretroAdmin 7d1d8322e6 Bump up to 1.20.0 2024-12-31 06:30:58 +01:00
Eric Warmenhoven b09b98ffd5
apple: include doukutsu_rs core in App Store builds (#17302) 2024-12-28 18:45:24 +01:00
Eric Warmenhoven 3989a62f60
Apple buildfix (#17294) 2024-12-27 20:36:12 +01:00
LibretroAdmin 18c85b5ccd Cleanups -
* Less string copies
* Some general cleanups
* Add extra param to runloop_message_queue_push so we can pass size_t
of the message
* Consistent conventions for local variable usage for certain things
2024-12-27 15:13:45 +01:00
Eric Warmenhoven 4ab58f66ec
apple: tweaks to fastfile to better handle versions and dirty repos (#17278) 2024-12-22 19:38:56 -08:00
Eric Warmenhoven a7db10508c
ios9: re-enable web server/webdav server (#17275) 2024-12-21 11:39:44 -08:00
Eric Warmenhoven 47709fe0d5
apple: include bsnes-js core in App Store builds (#17267) 2024-12-18 10:03:54 -08:00
Eric Warmenhoven 569f9a3282
apple: fastlane improvements (#17266)
- remove a lot of duplicated code across mac/ios/appletvos
- restore ability to use either login or app_store_connect_api_key
- pull version string from version.all instead of app store connect
- allow building from alternate branch
- allow skipping upload or making it publicly available
2024-12-18 10:03:42 -08:00
Eric Warmenhoven 62c725579a
apple: use gcd for task queue (#17248) 2024-12-11 22:55:46 -08:00
Eric Warmenhoven 3bdc71c20f
apple: include yabause core on app store (#17237) 2024-12-07 00:58:55 -08:00
Eric Warmenhoven 6475791e07
iOS: fix reopening a recently-creatd file, and build flag cleanup (#17223) 2024-12-01 10:48:52 -08:00
Alex Kiraly 0b05b1e3f4
Fix CloudSync on Windows, enable by default (#16475)
* Make paths portable for CloudSync when building manifest

* Enable CloudSync on Windows builds

* Fix "fetech server file" - Forgot to commit this, oops!

* Fix definition conflict with gzguts.h

* "Enable Cloud Sync for Windows UWP builds"

---------

Co-authored-by: WindowsDEV <WindowsDEV@WindowsDEV-VM.lan>
2024-11-25 09:47:27 -08:00
Eric Warmenhoven b2af02f9fb
apple: include mrboom core in App Store builds (#17207) 2024-11-25 09:21:07 -06:00
Eric Warmenhoven b95c15cfdf
apple: include noods core on app store (#17198) 2024-11-24 02:50:51 -06:00
Camden Fullmer 89732bee54
Use the correct case for Xcode. (#17195) 2024-11-22 01:23:11 -08:00
Eric Warmenhoven aff99e3e10
apple: include holani core in App Store builds (#17190) 2024-11-19 00:18:24 -08:00
Eric Warmenhoven 7dfc001379
tvOS: bring minimum tvOS version of App Store builds back down to 13.0 (#17158) 2024-11-03 15:59:22 -08:00
Eric Warmenhoven f175d0e091
tvOS: Add Settings.app option to reset retroarch.cfg (#17143) 2024-10-30 21:49:55 -07:00
Eric Warmenhoven 1f99ba89ca
ios: buildfix (#17137) 2024-10-30 07:03:11 -07:00
Eric Warmenhoven cd574f7f33
tvOS: Add WebDAV server for adding files more easily (#17135)
Also update to latest (last) version of GCDWebServer.
2024-10-29 21:07:47 -07:00
Joey Parrish b36d8da5d3
docs: Add missing command to emscripten docs (#17097) 2024-10-14 04:21:18 -07:00
Eric Warmenhoven d362c88ac2
osx: prefer moltenvk from retroarch-apple-deps (#17086) 2024-10-12 11:59:17 -07:00
Eric Warmenhoven c60f4603cd
apple: Include vintaged stella2023 core in app store builds (#17085) 2024-10-10 04:57:19 -07:00
Eric Warmenhoven a565cae5d8
macOS: Update App Store packaging script (#17081) 2024-10-07 03:37:56 -07:00
Eric Warmenhoven 4d999c24a8
macOS: fix steam automation build (#17073) 2024-10-04 12:46:59 -07:00
Eric Warmenhoven 7ae8597765
macOS: Create App Store build (#17074) 2024-10-04 12:46:51 -07:00
Eric Warmenhoven 48b71d5cf8
tvOS: Fix creation of frameworks for App Store build (#17070) 2024-10-02 17:32:58 -07:00
Eric Warmenhoven ed574cd059
iOS/tvOS: Remove AltKit (#17069) 2024-10-01 17:36:02 -07:00
Eric Warmenhoven 1d2c9a8373
macOS: minor updates to GL build to fix compatibility with Xcode 16 (#17064) 2024-09-30 07:02:37 -07:00
Alex Kiraly 61e8dfc860
Enable Cloud Sync on Android (non-SSL) (#17060) 2024-09-29 11:12:26 -07:00
Eric Warmenhoven 6403605f64
macOS: fix how vulkan gets linked/bundled (#17043) 2024-09-27 14:37:00 -07:00
Eric Warmenhoven 73439eeff8
iOS/tvOS: Add Beetle PC-FX to App Store build (#17044) 2024-09-27 14:36:53 -07:00
Eric Warmenhoven d7839bbd7d
iOS: Let RApplication handle touch events when TouchMouse not enabled (#17046) 2024-09-27 14:36:22 -07:00
Colin Kinloch c90f7aba6c
Use reverse DNS name for desktop file and icon (#16449)
Reverse DNS being com.libretro.RetroArch
2024-09-23 09:03:48 -07:00
Eric Warmenhoven b557bc9523
Fixing compiler warnings (#17001) 2024-09-14 13:11:20 -07:00
Eric Warmenhoven 2ecf5e79c5
apple: minor cleanup of Xcode project files (#16992) 2024-09-11 20:10:53 -07:00
Eric Warmenhoven 853c2cc14e
iOS: A few changes to fix/improve app store submission (#16988) 2024-09-10 22:13:25 -07:00
Eric Warmenhoven cfbfd01f38
iOS: Last bits of iOS 12 support, including loading an older MoltenVK library (#16982) 2024-09-09 21:27:29 -07:00
Eric Warmenhoven 42f66adbf2
iOS/tvOS: minor compiler flag optimization/cleanup (#16974) 2024-09-08 03:10:38 -07:00
Eric Warmenhoven d228c9d469
iOS: More fixes to enable running on iOS 12 (#16978) 2024-09-08 03:10:30 -07:00
Eric Warmenhoven e34b57fd97
iOS: Add @available tags to enable compilation back to iOS 12 (#16969) 2024-09-06 14:57:36 -07:00
Eric Warmenhoven 43e5492002
apple: to use the microphone apple requires we ask, and be entitled (#16964) 2024-09-04 22:53:06 -07:00
Eric Warmenhoven 60ee32b879
apple: display server, including ProMotion support (#16963) 2024-09-04 22:52:59 -07:00
Eric Warmenhoven 156b9f3487
iOS: Use BaseConfig xcconfig file, shared with macOS (#16955) 2024-09-03 19:02:08 -07:00
Eric Warmenhoven 6cf338d91a
iOS/tvOS: Speed up app store builds by downloading cores in parallel (#16919) 2024-08-24 02:34:15 -07:00
Eric Warmenhoven 800be5530f
iOS: Better handling of physical mice/magic keyboard trackpad (#16911) 2024-08-22 12:11:16 -07:00
Eric Warmenhoven da8c0accd6
iOS/tvOS: Bring neon defines in line with macOS arm64 build (#16885) 2024-08-17 09:57:36 -05:00
Eric Warmenhoven b56547f9dd
macOS: optional library inclusion (#16877) 2024-08-15 15:27:26 -07:00
Eric Warmenhoven efc09a1009
iOS/tvOS: Add opera core to App Store build (#16859) 2024-08-09 09:28:28 -07:00
Eric Warmenhoven 394c396d89
iOS/tvOS: Add fastlane for TestFlight automation (#16824)
* iOS: Add fastlane for TestFlight automation

* tvOS: Add fastlane for TestFlight automation
2024-07-30 17:33:16 -07:00
Eric Warmenhoven 858148fbae
iOS: on iOS 18, enable game mode (#16817) 2024-07-25 22:27:19 -07:00
Eric Warmenhoven 63799385fc
iCloud cloud sync driver (#16794) 2024-07-18 22:02:52 -07:00
LibretroAdmin 5ee1e16595 Revert "Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class."
This reverts commit 72db30128c.
2024-07-01 20:40:48 -05:00
LibretroAdmin e91f9ab641 Revert "Android: Remove External Storage permission"
This reverts commit 850560d1b6.
2024-07-01 20:40:48 -05:00
LibretroAdmin 61d830eea2 Revert "Android: Add function to migrate RetroArch folder from sdcard."
This reverts commit b7235e426f.
2024-07-01 20:40:48 -05:00
LibretroAdmin 8b13a4ab0c Revert "Improvements to migration code Will be squashed before commit"
This reverts commit 3dab003b19.
2024-07-01 20:40:48 -05:00
cwyc 3dab003b19 Improvements to migration code
Will be squashed before commit
2024-06-30 20:31:23 -05:00
cwyc b7235e426f Android: Add function to migrate RetroArch folder from sdcard. 2024-06-30 20:31:23 -05:00
cwyc 850560d1b6 Android: Remove External Storage permission 2024-06-30 20:31:23 -05:00
cwyc 72db30128c Android: Improvements to DocumentProvider
Added move and rename methods
Provider notifies viewer to refresh view when files are changed
Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class.
2024-06-30 20:31:23 -05:00
Eric Warmenhoven 24f8bd1638 iOS/tvOS: Add ardens and anarch cores to app store build 2024-06-16 08:40:24 -05:00
Eric Warmenhoven c978d7944a iOS/tvOS: Include DoubleCherryGB in AppStore build 2024-06-04 13:17:59 -05:00
libretroadmin 75c647d3ca Bump to version 1.19.1 2024-06-04 06:53:13 +02:00
Thiago Seus 22646d3e74 Accessibility: enable accessibility if Talkback is on 2024-06-02 14:49:19 -05:00
Thiago Seus b4ed4b58d6 Accessibility: add first Android version 2024-06-02 14:49:19 -05:00
Reilly Brogan 7f3de64ef8 wayland: Fix Wayland appId 2024-05-30 22:54:50 -05:00
Eric Warmenhoven 754a194471 tvOS: revert MoltenVK to 1.2.7 to fix tvOS 13.4 2024-05-30 22:54:19 -05:00
MoistDreams 64680cbfef Package *.lck core lock file-extension.
Includes *.lck alongside the rest of the cores/$platform/cores so that bundled cores can be locked at time of publish.
2024-05-30 14:58:14 -05:00
libretroadmin 00b8a5f15c Bump to version 1.19.0 2024-05-30 05:03:48 +02:00
Eric Warmenhoven 52413260de iOS: default audio sync on again, also more mfi logging 2024-05-26 21:32:55 +02:00
Eric Warmenhoven eb3adeaf87 Fix build for osx opengl 2024-05-22 20:22:14 -07:00
libretroadmin a74675a718 Remove unneeded ENABLE_HLSL code from glslang 2024-05-23 01:25:37 +02:00
Eric Warmenhoven 87b643f487 Apple: Correctly register for filetypes uniquely 2024-05-22 13:21:56 -07:00
Eric Warmenhoven c1fec60f60 iOS/tvOS: fix keyboard handling for app store builds 2024-05-22 07:25:13 -07:00
Eric Warmenhoven d24b7955a5 tvOS: Fix packaging by reverting the name 2024-05-20 22:29:01 -07:00
Eric Warmenhoven e9e5868a8f iOS/tvOS: Creation of App Store build configuraiton 2024-05-20 00:22:51 -07:00
Eric Warmenhoven 529d6f78d0 iOS/tvOS: Clean up Xcode project file 2024-05-19 21:50:31 -07:00
Eric Warmenhoven 329cf5cbff iOS/tvOS: define PACKAGE_VERSION to be App Store MARKETING_VERSION 2024-05-19 12:22:26 -07:00
aerisarn fe5c9a37a5 Update README.md
Fix URL
2024-05-17 14:40:49 -07:00
e.canepa 448dea5beb UWP 4K fix: align MESA reading of ClientRect to retroarch procedure, this fixes max resolution being set to 1080p. As reading must be done inside an UI thread and is in fact an async operation which might delay frame generation, the reading itself is doen once and cached, give that changing resolution while the app is running is an unlikely corner-case use 2024-05-17 14:40:49 -07:00
Edoardo Canepa e0537c0548 Align MESA to alpha-2-resfix
Remove wrong resolution special handling for OPENGL
2024-05-17 14:40:49 -07:00
Eric Warmenhoven ce6dbcd7e8
macOS: Qt still builds, if you set QT_INSTALL directory correctly (#16527) 2024-05-14 19:51:45 -07:00
Eric Warmenhoven 81f7aecad4
macOS: use xcassets instead of icns file for app icon (#16524) 2024-05-13 12:04:05 -07:00
Eric Warmenhoven 04baed2aff
macOS: appstore: restore copying audio/video filters (#16521) 2024-05-13 07:24:45 -07:00
Eric Warmenhoven 76b5d40954
macOS: updates for app store submission (#16514) 2024-05-11 16:57:29 -07:00
Eric Warmenhoven a2a7c666fb
iOS/tvOS: some updates for packaging for app store (#16508) 2024-05-09 09:54:28 -07:00
Eric Warmenhoven 55be94212a
macOS: MoltenVK as xcframework (#16507) 2024-05-08 16:41:15 -07:00
Eric Warmenhoven 0415ed2f95
apple: Use C function from CoreFoundation instead of ObjC from Foundation (#16476) 2024-04-29 18:30:56 -07:00
Dionoid c04bbd6d65
Added M2000 to core selection dropdown (#16479) 2024-04-29 18:29:39 -07:00
Eric Warmenhoven 70ac6d9541
iOS/tvOS: Better way of packaging Frameworks (#16468) 2024-04-25 10:09:58 -07:00
Eric Warmenhoven 6df643d138
iOS/tvOS: MoltenVK for simulators (#16463) 2024-04-23 21:35:55 -07:00
Eric Warmenhoven c0366aba06
Apple misc (#16462)
* iOS/tvOS: Hide MoltenVK from Core List, again

* iOS/tvOS: Don't show certain core management options

* apple: Manage macOS/iOS/tvOS from one workspace

* iOS/tvOS: update-cores.sh tweaks
2024-04-23 15:53:35 -07:00