Commit Graph

1681 Commits

Author SHA1 Message Date
Eric Warmenhoven d316c2cbc9 ipad: don't force fullscreen, allow multitasking 2025-07-07 10:36:26 -04:00
Eric Warmenhoven 7d09e380f4
apple: fix coretext font renderer unicode handling, make default 2025-07-06 01:07:03 -04:00
Eric Warmenhoven 371ddf5889 macos build fix 2025-06-27 15:33:04 -04:00
Eric Warmenhoven 9ff5aaa679 macos x86 build fix 2025-06-27 15:07:48 -04:00
Eric Warmenhoven 1e109e2927 apple: include zstd and nearest resampler 2025-06-27 11:17:25 -04:00
Eric Warmenhoven c16840444e apple: add reminiscence and vitaquake2 to App Store builds 2025-06-21 14:08:10 -04:00
Eric Warmenhoven d9d874712c apple: extremely minor cleanup 2025-06-21 13:27:22 -04:00
Eric Warmenhoven 42704b9311 apple: include correct git hash when uploading testflight build 2025-06-16 15:00:01 -04:00
Eric Warmenhoven f9c99288da android: try to avoid build-time heap space problems 2025-06-13 16:21:09 -04:00
Eric Warmenhoven bb6a0c5772 apple: Xcode tweaks 2025-06-09 22:25:14 -04:00
Eric Warmenhoven c74164c6d0 android: enable ssl
0c4bbda16a
2025-06-05 22:53:33 -04:00
Eric Warmenhoven 86f63e1f59 android: revert of enabling ssl 2025-06-04 14:52:01 -04:00
Eric Warmenhoven 98852bd427 android: enable builtin mbed-tls
fixes #16847
2025-06-03 23:03:37 -04:00
Eric Warmenhoven 38a3b924ae iOS/tvOS: enable HAVE_NETWORK_COMMAND 2025-05-31 16:05:41 -04:00
zoltanvb 15f4f1e63c Enable HAVE_NETWORK_CMD for Android. 2025-05-29 21:46:25 +02:00
Eric Warmenhoven d8cd500316 macOS: Prompt for local network access 2025-05-26 00:40:56 -04:00
LibretroAdmin 99b4b66174
Merge pull request #17926 from warmenhoven/warmenhoven/pr/apple-gear
apple: add gearcoleco, geargrafx cores to app store builds
2025-05-22 12:32:19 +02:00
Eric Warmenhoven 7e52201fb6 apple: add sameduck core to app store builds 2025-05-22 01:38:56 -04:00
Eric Warmenhoven 0c872e7c94 apple: add gearcoleco, geargrafx cores to app store builds 2025-05-22 00:11:54 -04:00
Eric Warmenhoven 906c0be946 macos/ios: Enable icloud_drive cloud sync backend 2025-05-12 09:17:16 -04:00
Eric Warmenhoven 874cc00c2e macos: fix app store packaging 2025-05-11 12:01:20 -04:00
BinBashBanana 2d3c18e48d Emscripten improvements pt. 4 2025-05-08 11:01:43 -07:00
LibretroAdmin 203fff1a11
Bump version 2025-04-14 23:04:09 -07:00
BinBashBanana f5a056b086 Fix safari file uploads 2025-04-03 10:24:06 -07:00
BinBashBanana 393e1b4b98 Fixes for #17750 2025-03-30 13:15:50 -07:00
BinBashBanana 05cefc9a4d AudioWorklet driver, misc. emscripten fixes 2025-03-28 19:41:40 -07:00
Ken Mitton 59d1b94b65 Package lr-dice for the Apple Store. 2025-03-21 11:53:50 -04:00
LibretroAdmin 0b2b933388
Merge pull request #17681 from SternXD/uwp-update-angle 2025-03-12 22:00:30 -07:00
SternXD 37b349432f
UWP: Update invalid pfx key 2025-03-10 11:24:42 -04:00
SternXD 1761aa0814
UWP: Update x64 Angle Binaries 2025-03-10 11:01:27 -04:00
BinBashBanana c672730259 address issues 2025-03-06 15:38:40 -08:00
BinBashBanana f6eb1ed5c5 Threaded emscripten improvements 2025-03-05 10:39:43 -08:00
LibretroAdmin 80b62db04e
Merge pull request #17657 from warmenhoven/warmenhoven/pr/apple-avf-camera
apple: enable JoeMatt's avfoundation-based camera driver
2025-03-04 07:32:13 -08:00
LibretroAdmin 9a8035bad1
Merge pull request #17656 from warmenhoven/warmenhoven/pr/macos-flto
macos: compile with -flto
2025-03-04 07:32:05 -08:00
Eric Warmenhoven 8c729fd029 apple: enable JoeMatt's avfoundation-based camera driver 2025-03-03 23:20:59 -05:00
Eric Warmenhoven 6c7b16df3c macos: compile with -flto 2025-03-03 22:51:16 -05:00
Eric Warmenhoven c1806ff994 apple: add camera entitlements 2025-03-03 22:46:43 -05:00
Joe Osborn f2a86f34d1
Remove unnecessary rigmarole around importing the script as a blob (#17642) 2025-03-01 17:34:05 -08:00
Joseph C. Osborn c29cd046d0 Fixes asset paths/double bundle path for web player 2025-02-28 18:44:31 +01: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
Joe Osborn 9005e1b9fe
Use correct key into message data to get last asset fetch time (#17607) 2025-02-21 07:40:49 +01: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 8bf7e76f45
apple: enable corelocation location driver (#17595) 2025-02-19 04:04:17 +01:00
Steve Cox 087d11b750
for iOS: updated app icon to additional iconset (#17582) 2025-02-18 17:13:13 +01:00
Eric Warmenhoven cf867395f8
apple: enable midi driver in macos/ios builds (#17580) 2025-02-17 01:38:07 +01:00
Steve Cox d58394b4e6
for iOS: update Launch Screen to match icon & UI color scheme; add subtle drag shadow to app icon (#17574)
* for iOS: update launch screen to match UI

* use higher resolution invader

* adjust Y constraint (diff invader body proportion)

* for iOS: update Launch Screen to match app icon/ui

* update iOS icon—match shadow on other platforms

* icon source svgs to media folder for others’ reuse

* iOS App Icon revision, fix asset index mismatch
2025-02-16 23:12:33 +01:00
Steve Cox 1170373494
update tvOS “Top Shelf” image (#17543) 2025-02-10 11:52:38 +01:00
Eric Warmenhoven 4c8da979a5
fix a couple minor warnings (#17526) 2025-02-06 20:22:36 +01:00
Eric Warmenhoven 92c3800731
apple: include b2 core in App Store builds (#17525) 2025-02-06 04:49:08 +01:00
LibretroAdmin 2870a0a8ad
Revert "Workerized emscripten retroarch (WIP) (#17484)" (#17492)
This reverts commit cacd5a9a23.
2025-01-30 21:35:58 +01:00