3 Commits

Author SHA1 Message Date
Shokunin 760be0c6c0 config: a packaged game folder is its own project root
find_project_root walked up from a release's game.toml to the first
ancestor with a root marker. With a global ~/.gitignore (common) and the
game under ~/Games/<title>, that was the home folder, so [runtime]
memcard_dir = "saves" put memory cards and savestates in ~/saves instead
of beside the game. A folder whose licenses/psxrecomp-LICENSE was staged
by package_game_release.sh now stops the walk.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 02:06:46 -07:00
Matthew Stanley 6e154bcf03 Preserve Windows UNC roots when persisting launcher paths
Use native path spelling for settings and BIOS/disc sidecars. Add save/reopen regressions for UNC selections.

Beads: beads-eio.3.286
2026-10-06 21:52:36 -07:00
Alexandros Mandravillis 5ef2bf04fd launcher: save paths inside the game folder relative to it
settings.toml [bios]/[disc]/[memcard] and the disc.cfg / bios.cfg
sidecars were written as absolute paths. A portable game folder therefore
broke once it was moved or copied to another PC: the launcher asked for
the disc and BIOS again, and saves were not found.

Paths inside the folder that holds settings.toml (the exe directory) are
now written relative to it. Paths outside it (another drive, a network
share) stay absolute. Readers already resolve relative paths against the
exe directory (previous commit), so the folder works wherever it lands.

portable_settings_paths_test checks that a path inside the settings folder
is written relative, a path outside stays absolute, and the relative form
reads back unchanged.
2026-09-30 22:26:00 +03:00