Project

General

Profile

Actions

Emulator Issues #8024

closed

GCI Folder saves aren't written to disk until a clean emulation stop

Added by pauldacheez over 9 years ago.

Status:
Fixed
Priority:
High
Assignee:
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Current
Regression:
No
Relates to usability:
Yes
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

What's the problem? Describe what went wrong in few words.
Dolphin currently doesn't write GCI Folder saves to disk until you stop emulation from within Dolphin. If Dolphin crashes or is forcibly closed in some way that prevents the normal emulation stop code from running, any changes to .gcis are lost.

I lost about two hours' worth of Pikmin 2 progress last night because I had to force-quit Dolphin after I made the unfortunate mistake of checking Render to Main Window for the temporary convenience of having the log next to the render window, then going into fullscreen and realizing that that currently breaks all keyboard shortcuts. Fucking Armada and his exclusive fullscreen, causing issues while likely providing zero benefit on OS X. v_v

What did you expect to happen instead?
I expect a whole Dolphin to fly out of my screen and write .gci changes to disc within, say, five seconds of a game writing to memcard. With its girthy goddamn tail.

What steps will reproduce the problem?

  1. Open Dolphin, make sure you're using a GCI Folder, start up a GameCube game that saves to memcard.
  2. Play that game (make noticeable progress!) until it saves to memcard, then forcibly kill the Dolphin some time after it's saved.
  3. Reopen Dolphin, reopen that game, notice that your progress ain't there anymore.

Which versions of Dolphin did you test on?
new-zelda-hle 4.0-4883. Present in master as well, and there haven't been any GCI Folder-related changes in a month or two.

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
This has likely existed as long as GCI Folders have, and if it's a regression I really don't care to bisect for it.

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
Mac OS X 10.10.1, iMac 11,2
Intel Core i3-540 (3.06 GHz, 2 cores + hyperthreading, Nehalem)
ATi Radeon HD 4670 (256 MB)

This also affects Windows (as JMC47 confirmed) and should affect Linux/Android unless we're using OS-specific file access code. I don't know if this issue occurs with raw memcard files.

Actions #1

Updated by lpfaint99 over 9 years ago

They were originally saved to disc immediately.
This was changed by
https://github.com/dolphin-emu/dolphin/commit/bd7f856424b14e19ff9cc87066b728bb49de678c
for whatever reason.

this patch may be worth testing
https://forums.dolphin-emu.org/Thread-patch-instant-gc-memcard-directory-persists?pid=347867#pid347867

I was happy with the periodic flushing that was happening before, I don't know why it was removed with no replacement...

Actions #2

Updated by JMC4789 over 9 years ago

It was accidentally removed while trying to fix a bug with the .raw memcard files. I don't think there would be any argument toward putting it back. It was an unintended casualty.

Actions #3

Updated by delroth over 9 years ago

  • Milestone set to Current
Actions #4

Updated by JosJuice about 9 years ago

  • Status changed from New to Fix pending
Actions #5

Updated by JMC4789 about 9 years ago

Ping about this to try and get the relevant parties for updates.

Actions #6

Updated by JMC4789 almost 9 years ago

  • Status changed from Fix pending to Fixed
Actions

Also available in: Atom PDF