mirror of
https://github.com/ARMSX2/ARMSX3.git
synced 2026-08-24 16:58:52 -07:00
Continuing with the modules that did compile is correct -- the dispatcher entry for an uncompiled function interprets, nothing runs garbage -- but it is per-instruction dispatch and it is slower than the interpreter outright. Saint Seiya measured 6fps against 23 with most of its modules missing. A game at that speed looks broken, and it gets reported as broken, when the real answer is one restart away. An honest stop is better than a degraded run that invites the wrong bug report. So this ends the boot the way running out of memory always did. What is different from before is the reason: the message names it and says what to do, and it stays on screen because the overlay is drawn by the RSX thread rather than the one this stops. The fallback itself stays in place for the ordinary case of a single module failing for some other reason, which is upstream's design and is worth keeping -- one bad module costing its own functions is a fair trade. Running out of memory is not that case: it takes most of the executable with it.