Skip to content

Add scummvm to the ASYNCIFY-required cores list - #48

Draft
TRusselo wants to merge 1 commit into
EmulatorJS:v1.22.2from
TRusselo:add-scummvm-needsasync
Draft

TRusselo wants to merge 1 commit into
EmulatorJS:v1.22.2from
TRusselo:add-scummvm-needsasync

Conversation

@TRusselo

Copy link
Copy Markdown

ScummVM fetches its engine data over the network during game load. LibretroRemoteEngineData::fetch() is registered in the engine search path and calls emscripten_wget_data(), which is synchronous:

emscripten_wget_data(url.c_str(), &buffer, &numBytes, &error);

Engines pull fonts.dat, toon.dat and similar from there while retro_load_game() is running, so without ASYNCIFY that call blocks the main thread and the load never completes.

Same shape as bluemsx in ad2ca2a — a core doing synchronous I/O during load.

One line, no behaviour change for any other core.

AI assistance: written with Claude, reviewed and tested by me before opening.

@TRusselo
TRusselo marked this pull request as draft September 21, 2026 01:16
ScummVM fetches its engine data over the network during game load:
LibretroRemoteEngineData::fetch() sits in the engine search path and calls
emscripten_wget_data(), which is synchronous. Built without ASYNCIFY that
blocks the main thread and the load never completes.

Assisted-by: Claude:claude-opus-5
@TRusselo
TRusselo force-pushed the add-scummvm-needsasync branch from f21b106 to 7994a5d Compare September 24, 2026 03:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant