Skip to content

Do not store modified state in .d64 file #559

@fekir

Description

@fekir

Hello,

some games that are distributed as .d64 can store information; for example the game score or preferences.

Unfortunately doing so changes the .d64 file itself.

Thus

  • it is not possible to use a simple hash value to detect games stored in .d64 files
  • it is not possible to reset the game as-if it has never been touched (reset preferences, delete saved or scores)
  • other tasks for managing the game files are harder

It would be nice if the vice core would never modify the .d64 file, and redirect all writes to a companion file (or just store the whole modified .d64 elsewhere).
When a .d64 file is started, the core would load the .d64 file and the diff.

Another advantage is that the proposed mechanism could also improve the support for zipped games if the patch is applied after the game is extracted: https://github.com/libretro/vice-libretro#zip-support

Retroarch already supports a similar functionality https://docs.libretro.com/guides/softpatching/, maybe it is possible to reuse this mechanism?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions