Hacking Corrupted SAVs?

jesterscourt

Not Brad.
OP
Member
Joined
Jan 3, 2007
Messages
2,356
Trophies
1
XP
1,310
Country
United States
Seeing as there is no ROM talk on the official forums, I suppose this would be the best place to ask.

Certain games seem to either not save properly, or revert to an older save (or a non-save)

These are covered on the Compatibility wiki such as Hotel Dusk and Custom Robo Arena... is there anything I can do about it however? I will be playing for hours, go to save, turn it back on, it saves the EEPROM data, I go back into the game, and then I am at the beginning...
frown.gif
 

ChuckMcB

Well-Known Member
Member
Joined
Mar 30, 2007
Messages
373
Trophies
0
Website
www.ds-xtra.com
XP
95
Country
CRA's saves seem to get messed up when you play another game then go back to it. For a while there I backed up the save every time I played it....but it was too much hassle, now I just play online.

When the new Firmware comes out I'll start back into these games again.
 

alanchiz

Well-Known Member
Newcomer
Joined
Nov 13, 2006
Messages
50
Trophies
0
XP
134
Country
Im hoping that the next firmware will sort this too, that said, the only problem I had recently was Theme Park.
God knows when the FW will come out though, unfortunately I have no faith left in the DS-X team.
 

ChuckMcB

Well-Known Member
Member
Joined
Mar 30, 2007
Messages
373
Trophies
0
Website
www.ds-xtra.com
XP
95
Country
Since it's only a 0.0.1 release (v1.1.0 to v1.1.1) I can't see too many changes taking place, but I'm sure the DS-X team know it's in their best interest to get as many of the current bugs sorted as soon as possible.

I've got a couple of new games myself that I can't be bothered playing as I lost a couple of hours play due to save problems.
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
Seeing as there is no ROM talk on the official forums, I suppose this would be the best place to ask.Â

Certain games seem to either not save properly, or revert to an older save (or a non-save)

These are covered on the Compatibility wiki such as Hotel Dusk and Custom Robo Arena... is there anything I can do about it however? I will be playing for hours, go to save, turn it back on, it saves the EEPROM data, I go back into the game, and then I am at the beginning...
frown.gif

Here are my conclusions about the save corruption problem on the DS-X.

The cause is the "EEPROM contents to .SAV file" writting routine (EEPROM message at bootup) is just half-baked for at least the FLASH-type saves. For some FLASH 2 Mbit games (like Mario Kart and Metroid PH) the current DS-X routine correctly writes EEPROM contents to a .SAV file and the result is a WORKING .SAV file.

However for other FLASH 2 Mbit games (Pokemon Ranger and Pokemon D/P) the routine creates CORRUPTED, NON-WORKING .SAV files, there's no such "after you play other ROM" corruption cause, the .SAV is simply created in a corrupted state.

Now some of you will say: but if I keep playing Pokemon Ranger without playing other ROM, my saves work. The answer is no. Each time you see the EEPROM message a corrupted .SAV file is being created. What happens is that the (working) EEPROM contents are not being completely flushed (cleaned) when the .SAV file is create so when you go back and continue your Pokemon Ranger game it reads the EEPROM contents, not the recently created .SAV file. However if you play other ROM, EEPROM contents gets replaced. When you come back to Pokemon Ranger now it can't read from the EEPROM so it tries to read from your .SAV. But your .SAV has been created corrupted (not corrupted by playing other ROM), so that's why you get the corruption message in Pokemon Ranger.

This also happens to Pokemon D/P, the DS-X is also creating corrupted .SAV files. But for some reasons these games "fill" the DS-X EEPROM in such a way that their data is not lost when playing another ROM. So as long as they can read from the EEPROM contents you don't have save problems. I've not tested Custom Robo Arena but that "my progress revert to an old state" my be well due to that old state being the only availabe on the EEPROM and the current being lost or saved to a corrupted .SAV file.

To check this I performed the following test: I played Pokemon D for about 1 hour 15 min. The last in-game save I made was repeated 4 times in a row just to be sure the EEPROM only contained data pertaining to that save. The EEPROM message appeared and my .SAV file was updated. BEFORE loading again Pokemon D, I copied (not cut) the .SAV from my DS-X to my HD. Then I played again Pokemon D. No problems.

Then I deleted the .SAV from my DS-X and loaded Pokemon D. As many have already experienced, you can continue to play even without that .SAV present, a proof it is reading EEPROM contents. I loaded again Pokemon D, but this time at titlescreen I used UP+SELECT+B to ERASE any trace of my progress. This effectively flushes the EEPROM because next time I load Pokemon D it directly starts a new game.

Ok then: I perform the erasing process again but I don't start a new game. I just shut down my NDSL and copy my backup .SAV to the DS-X. Know what? The game says my save is corrupted (remember it was suppossedly working whan I backuped it and before doing all that erasing stuff).

To eliminate all possible interaction I performed then a more extreme test: reflash my DS-X firmware. I know this effectively flushes ALL EEPROM contents. Also I low level formatted the card. The idea was to be sure there was no trace of Pokemon D.

The result is: while restored backup .SAV files for Mario Kart and Metroid PH are working after all this, the Pokemon D .SAV is not recognized and the corrupted message appears.

As I said the corruption problem for some FLASH-type saves is caused by a half-baked FLASH save writting support in the DS-X.

Hope this and MANY other ROM issues/annoyances get fixed FIRST, before releasing a new and unnecessary bells & whistles GUI and more useless SkinApps. And please, DS-X team test your firmware before release and I mean test it seriously.
 

bragon

Member
Newcomer
Joined
May 3, 2007
Messages
8
Trophies
0
XP
67
Country
Canada
I was afraid to loose my 11 hours of play to Pokemon D in DS-X. So I did all the procedure described by Kazumi213 and fortunatelty my Pokemon D save was not corrupted. I dit it two times because the first time I did not erase the eeprom twice as he described. I also converted the DS-X save to ezflash V save with Shuny’s program and could use it in ezflash V, but only after many tries. In fact, the ezflash V seems to have the same eeprom problem as DS-X. I mean : it is very difficult to have it to use the new save instead of the eeprom save. I had to flush the eeprom by playing a couple of other games.
 

StacMaster-S

Well-Known Member
Member
Joined
Mar 16, 2007
Messages
368
Trophies
1
Age
45
Location
Albany, NY
Website
www.halolz.com
XP
196
Country
United States
Ugh, I'm so pissed off because Pearl was running perfectly fine on the previous firmware, and now I have to wait for a fix and there seems to be no way to get the old firmware software anymore.

I'm really disappointed with the DS-X team... I got a 4Gb at launch and had practically no issues... now I've got a 16Gb and a 4Gb with the latest firmware and I've got tons of bugs. >____
 

HBK

Clover - Fearless to Speak Now. ;)
Member
Joined
Mar 30, 2007
Messages
1,815
Trophies
1
Age
31
Location
Portugal
XP
424
Country
Portugal
StacMaster-S, you can downgrade if you want. Just go to GBATemp's download Center and download the old firmware updater. Follow the basic steps you do when updating, copy the 1.1.0 skin, and voilá.

Worked for me, went straight back to 1.1.0, Pokemon Diamond/Pearl working perfectly.

I was a beta-tester of 1.1.2, and it had a lot of problems, though I didn't detect the corruption issue until after public release.
 

windrider

Active Member
Newcomer
Joined
Jun 13, 2007
Messages
43
Trophies
1
Location
Alberta
XP
339
Country
Canada

ChuckMcB

Well-Known Member
Member
Joined
Mar 30, 2007
Messages
373
Trophies
0
Website
www.ds-xtra.com
XP
95
Country
QUOTE said:
So with the downgrading is your Pokemon/D/P still working fine. I am thinking also of downgrading just to get those 2 games working. Everything works fine on mine with the latest firmware except those 2 saves.
You can't go back to v1.1.0 all update apps have been taken offline as people with the new 4Gb cards where breaking their cards by applying v1.1.0 to them (the new cards can only run v1.1.1 or greater)
 

windrider

Active Member
Newcomer
Joined
Jun 13, 2007
Messages
43
Trophies
1
Location
Alberta
XP
339
Country
Canada
Yes I should have asked what size card he had, cause I thought I had read that on the DS-X forum.
Guess I will just wait for the new firmware then, they are getting close.
 

jesterscourt

Not Brad.
OP
Member
Joined
Jan 3, 2007
Messages
2,356
Trophies
1
XP
1,310
Country
United States
Seeing as there is no ROM talk on the official forums, I suppose this would be the best place to ask.Â

Certain games seem to either not save properly, or revert to an older save (or a non-save)

These are covered on the Compatibility wiki such as Hotel Dusk and Custom Robo Arena... is there anything I can do about it however? I will be playing for hours, go to save, turn it back on, it saves the EEPROM data, I go back into the game, and then I am at the beginning...
frown.gif



Here are my conclusions about the save corruption problem on the DS-X.

The cause is the "EEPROM contents to .SAV file" writting routine (EEPROM message at bootup) is just half-baked for at least the FLASH-type saves. For some FLASH 2 Mbit games (like Mario Kart and Metroid PH) the current DS-X routine correctly writes EEPROM contents to a .SAV file and the result is a WORKING .SAV file.

However for other FLASH 2 Mbit games (Pokemon Ranger and Pokemon D/P) the routine creates CORRUPTED, NON-WORKING .SAV files, there's no such "after you play other ROM" corruption cause, the .SAV is simply created in a corrupted state.

Now some of you will say: but if I keep playing Pokemon Ranger without playing other ROM, my saves work. The answer is no. Each time you see the EEPROM message a corrupted .SAV file is being created. What happens is that the (working) EEPROM contents are not being completely flushed (cleaned) when the .SAV file is create so when you go back and continue your Pokemon Ranger game it reads the EEPROM contents, not the recently created .SAV file. However if you play other ROM, EEPROM contents gets replaced. When you come back to Pokemon Ranger now it can't read from the EEPROM so it tries to read from your .SAV. But your .SAV has been created corrupted (not corrupted by playing other ROM), so that's why you get the corruption message in Pokemon Ranger.

This also happens to Pokemon D/P, the DS-X is also creating corrupted .SAV files. But for some reasons these games "fill" the DS-X EEPROM in such a way that their data is not lost when playing another ROM. So as long as they can read from the EEPROM contents you don't have save problems. I've not tested Custom Robo Arena but that "my progress revert to an old state" my be well due to that old state being the only availabe on the EEPROM and the current being lost or saved to a corrupted .SAV file.

To check this I performed the following test: I played Pokemon D for about 1 hour 15 min. The last in-game save I made was repeated 4 times in a row just to be sure the EEPROM only contained data pertaining to that save. The EEPROM message appeared and my .SAV file was updated. BEFORE loading again Pokemon D, I copied (not cut) the .SAV from my DS-X to my HD. Then I played again Pokemon D. No problems.

Then I deleted the .SAV from my DS-X and loaded Pokemon D. As many have already experienced, you can continue to play even without that .SAV present, a proof it is reading EEPROM contents. I loaded again Pokemon D, but this time at titlescreen I used UP+SELECT+B to ERASE any trace of my progress. This effectively flushes the EEPROM because next time I load Pokemon D it directly starts a new game.

Ok then: I perform the erasing process again but I don't start a new game. I just shut down my NDSL and copy my backup .SAV to the DS-X. Know what? The game says my save is corrupted (remember it was suppossedly working whan I backuped it and before doing all that erasing stuff).

To eliminate all possible interaction I performed then a more extreme test: reflash my DS-X firmware. I know this effectively flushes ALL EEPROM contents. Also I low level formatted the card. The idea was to be sure there was no trace of Pokemon D.

The result is: while restored backup .SAV files for Mario Kart and Metroid PH are working after all this, the Pokemon D .SAV is not recognized and the corrupted message appears.

As I said the corruption problem for some FLASH-type saves is caused by a half-baked FLASH save writting support in the DS-X.

Hope this and MANY other ROM issues/annoyances get fixed FIRST, before releasing a new and unnecessary bells & whistles GUI and more useless SkinApps. And please, DS-X team test your firmware before release and I mean test it seriously.

I missed this before, but this is one great post. Thank you.
bow.gif
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
Thanks jesterscourt. After that post I made further testing which showed slightly different results, like the Pokemon D/P .SAV NOT being always created in a corrupt state, but just sometimes (ramdomly) Anyway this was still bad.

After that I wrote several posts at DS-X forum regarding the EEPROM issues. A few days after DS-X team were announcing that quick (and barely tested) 1.1.2 firmware which contained the EEPROM fix, but used an updater which proved to be conflicting with the new 16 Gb models. Now they're about to release a new firmware after a 5-6 days public betatesting process.

However there are 2 games with known saving problems which nobody seem to have tested with the 1.1.2 (for those who say it is working flawlessly): Bleach DS 2nd and Pokemon Ranger. At least the Scorpei compat. list has not been updated about those. So if anyone is betatesting the new firmware and read this, please check those 2 games.
 

D3R3LIC7

Well-Known Member
Newcomer
Joined
Apr 24, 2007
Messages
45
Trophies
0
Age
35
Location
Texas
Website
myspace.com
XP
139
Country
United States
Man this thread was very informative. I have a DS-X and have been getting save corruptions with newer firmwares. Thank goodness it will all be forgotten once I get my R4. It's good to understand your problems though...
 

hicpotboy

New Member
Newbie
Joined
Jun 21, 2007
Messages
2
Trophies
0
XP
90
Country
Canada
One question for you, Kazumi. You seem to know a whole lot about how the DS-X does it's saving. I just downloaded the .sav editor for Pokemon, and while it can't read the actual .sav, if I convert it to something else, it can. Does this mean the save is good, or what?
 

kazumi213

Well-Known Member
Member
Joined
Oct 16, 2006
Messages
293
Trophies
0
XP
75
Country
One question for you, Kazumi. You seem to know a whole lot about how the DS-X does it's saving. I just downloaded the .sav editor for Pokemon, and while it can't read the actual .sav, if I convert it to something else, it can. Does this mean the save is good, or what?

No it doesn't. Pokesav can read the uncompressed ("converted") DS-X save even when the save itself is corrupted. I've verified this point. Information like the displayed on Pokesav main window is readable on all corrupted saves that I've tested. However, box pokemon information is screwed.

To be sure whether your save is ok you must try to load it on a emulator. I recommend using latest no$gba v2.4b. You have to use the uncompressed DS-X save, the same you are currently loading on Pokesav.

Edit NO$GBA.INI file and search the line where it says:

SAV/SNA File Format == Compressed

and change it to

SAV/SNA File Format == Uncompressed

Save the edited NO$GBA.INI.

Now put your uncompressed pokemon save on the "BATTERY" folder and name it the same as the pokemon ROM you are going to load on the emulator.

If you don't get any error when trying to load your save on no$gba emulator, you can be sure your save is ok. Then you can edit it on Pokesav (don't use the one on BATTERY folder).

Copy your edited pokemon save to your DS-X just like it comes out from Pokesav.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • K3Nv2 @ K3Nv2:
    They haslve dedicated on board chips that aren't tweaked like x64/x32 afaik
  • ColdBlitz @ ColdBlitz:
    but its a custom os for both of them
  • ColdBlitz @ ColdBlitz:
    designed for only specific hardware
  • ColdBlitz @ ColdBlitz:
    so you have to learn to emulate that specific hardware which isn't as easy as you'd think
  • K3Nv2 @ K3Nv2:
    It's a locked down Linux distro basically
  • Psionic Roshambo @ Psionic Roshambo:
    I think the only custom hardware is to do with the SSD and a security chip
  • Psionic Roshambo @ Psionic Roshambo:
    Probably combined in one chip
  • K3Nv2 @ K3Nv2:
    They place married security chips onto boards iirc
  • Psionic Roshambo @ Psionic Roshambo:
    Damn Frontier is offering 5Gbps now lol
  • K3Nv2 @ K3Nv2:
    I honestly can't recommend any of the big 3 this years I'd say buy a rog ally z1 if we're being honest
  • Psionic Roshambo @ Psionic Roshambo:
    Honestly after the PS3 and 360 I just went full PC
  • K3Nv2 @ K3Nv2:
    Every games basically cross platform they only have about 6 titles making it worth the $600 price tag
  • Psionic Roshambo @ Psionic Roshambo:
    Didn't see much need for a console, all the advantages have kind of disappeared
  • ColdBlitz @ ColdBlitz:
    the ps3 used to support installing linux because the cpu was so powerful
  • K3Nv2 @ K3Nv2:
    Then the games are $70 and they want to reboot and refresh the same game every year
  • K3Nv2 @ K3Nv2:
    The ps3 was always Linux they just found a way to make it open source
  • ColdBlitz @ ColdBlitz:
    I'm avoiding buying from the big 3 at all atm
  • Psionic Roshambo @ Psionic Roshambo:
    At one point PC game pads where poorly supported, loading a game had setup, it was complicated. Now it's almost as easy as a console.
  • ColdBlitz @ ColdBlitz:
    nintendo needs to up their game soon
  • K3Nv2 @ K3Nv2:
    Yeah even bt support for Xbox one controllers are just as easy as pairing
    +1
  • ColdBlitz @ ColdBlitz:
    considering the steamdeck can emulate the switch (yikes) theres almost 0 reason to buy the switch apart from playing online and using cartridges
  • K3Nv2 @ K3Nv2:
    Xinput and 360 dongles were a driver nightmare
  • K3Nv2 @ K3Nv2:
    I remember having to manually put in drivers and what not
  • Psionic Roshambo @ Psionic Roshambo:
    Yeah the 360 dongles sucked
  • Psionic Roshambo @ Psionic Roshambo:
    But the new Xbox pads? PIr it up and if a game supports it it just works
    Psionic Roshambo @ Psionic Roshambo: But the new Xbox pads? PIr it up and if a game supports it it just works