Repository navigation
launcher: never a relinker output as input; leave out unusable modules; the whole error - #29
Merged
Merged
Conversation
…s; the whole error The same flaw a Windows player hit in the Windows/Linux launcher: a relink by hand with the dump as app0 writes its converted modules into the dump's own sce_module as *.guest.prx, Installer.modules(in:) took them for game modules and unwrap stopped the unlock with "X.prx.guest.prx is neither an ELF nor a decrypted SELF container". Relinker outputs are excluded by name from the inputs and from the dump's files cloned into app0; the relink key follows the input list, so the next unlock relinks and heals. A module still encrypted in the dump, or one the relinker fails on (exit 2 with FAIL: and Input: naming it), is left out and the relink runs again without it; Installer.leftOut lists them (kept beside the kept relink) and the launcher says which file and why once the game is ready. An encrypted eboot.bin still stops the unlock, in plain words. A failed tool now says the relinker's FAIL: line and the file it names, relative to the dump; Home wraps it over four lines and lets it be selected.
testTheBackdropFadesOnlyToTheGameTheSelectionRestsOn sleeps one key-repeat interval between moves against the selection's settle timer; on a busy runner a sleep runs long, the selection rests mid-run and the backdrop fades. It fails on main as well and passes here.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Mac launcher has the flaw a Windows player hit with the Windows/Linux launcher (AnyTogether/AnyPS5-Desktop#22): "libSceFace.prx.guest.prx is neither an ELF nor a decrypted SELF container (an encrypted dump cannot be used)" for Coffee Talk, and "relinker.exe failed (2): Input: …\source\sce_module\libSceNpCppWebApi.prx" for Lost in Play.
Causes
*.guest.prxis the relinker's output name. The launcher relinks in a fresh.AnyPS5/Work/<uuid>/sourcewith its output in the siblingout, and the relinker skips*.guest.prxitself; but a relink by hand with the dump asapp0, as the runtime layout in USAGE.md describes, writes the converted modules into the dump's ownsce_module.Installer.modules(in:)took every.prxof the dump, those too, andunwrapstopped the unlock on them. The dump was not encrypted.FAIL: <reason> (offset …)thenInput: <file>. The launcher kept only the last line, so the reason was lost.Changes (tools/macos/launcher)
app0; the relink key follows the input list, so the next unlock relinks and heals a game that failed this way.FAIL:whoseInput:is a module, noteboot.bin), is left out and the relink runs again. How the engine loads modules decides it: the executable refers to an unconverted module as a host library of that name, a runtime load of a module that was not relinked returns an error to the game, and where the engine has its own library of that name (libSceNpCppWebApi) it is used.Installer.leftOutlists them (kept beside the kept relink), and a toast says which file and why once the game is ready. An encryptedeboot.binstill stops the unlock, in plain words.ToolFailed: a failed tool says theFAIL:line and the file it names, relative to the dump (the work folder is gone by then). Home wraps the error over four lines and lets it be selected; the game's log has all the relinker printed.Tests
RelinkInputsTests(outputs never inputs; a polluted dump unlocks with only this relink's outputs; a relink after an engine update over a polluted dump heals; an encrypted module is left out; an encrypted executable stops in plain words; a module the relinker fails on is left out and the relink runs again, in a folder with spaces and non-ASCII, and the reuse reports it; a failed executable gives the whole reason; the error text).swift testfor RelinkInputsTests, UnlockSpeedTests, CloneTreeTests, UnlockSpaceTests, SelfUnwrapTests and LanguageCheckTests passes. The engine is unchanged.