fs(feat): Add Backup Saves for Custom Save Paths #73

Merged
Zephyron merged 13 commits from fs/custom-save-path-backup into main 2025-12-22 08:43:49 +00:00
Collaborator

Adds an optional safeguard for users using custom save directories. If enabled, every time a game performs a save commit, the data is mirrored back to the default NAND location. This prevents progress loss if an external drive or SD card is disconnected or corrupted.

  • Added a checkbox to the Filesystem config tab.

  • Updated SaveDataFactory to track the backup NAND path.

  • Hooked IFileSystem::Commit to trigger a recursive sync after the main save finishes.

  • Implemented clean overwrite logic in SaveDataFactory to ensure the backup is a 1:1 mirror.

Adds an optional safeguard for users using custom save directories. If enabled, every time a game performs a save commit, the data is mirrored back to the default NAND location. This prevents progress loss if an external drive or SD card is disconnected or corrupted. - Added a checkbox to the Filesystem config tab. - Updated SaveDataFactory to track the backup NAND path. - Hooked IFileSystem::Commit to trigger a recursive sync after the main save finishes. - Implemented clean overwrite logic in SaveDataFactory to ensure the backup is a 1:1 mirror.
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Signed-off-by: Collecting <collecting@noreply.localhost>
Collecting scheduled this pull request to auto merge when all checks succeed 2025-12-22 08:42:25 +00:00
Zephyron deleted branch fs/custom-save-path-backup 2025-12-22 08:43:49 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Citron/Emulator!73
No description provided.