PSP Firmware

Savedata Corrupt After Firmware Update
Quote from Torch @ forums.mformature.net:


 * When you use a lower firmware than required by the game, all your save games for that game will get corrupted the moment you update to a newer firmware.

Cause
This is just speculation on my part:
 * Savedata is encrypted using a key that is unique to each firmware.
 * Games try to decrypt using the key of the current firmware, which doesn't work if you do a firmware update.

Solution
One solution is of course to never update your firmware.

Another solution is:


 * Decrypt old corrupted savedata.
 * Create new savedate on new firmware.
 * Put old decrypted savedata into new save and re-encrypt.

FreeCheat / SaveDataE-D
Quote from Hoowahman @ forums.maxconsole.net:

Wow I figured it out after 2 days.. Luckily I was able to babelfish that URL I posted above from chinese to english. I'll try to type up more details about it in case more people want to know how to do it.

File downloads: 25455_FreeCheat1.0.12.18.zip SaveDataE-D_cn.rar

1. Extract FreeCheat to the root of your memory card

2. Extract SED to /PSP/GAME/

3. Follow instructions on readme to install freecheat.

4. Back up your corrupted save game to computer.

5. Start the game and start to create a new saved game. Before you actually save the new game to the memory stick you should press the note key which will bring up the freecheat console. We need to tell freecheat to go into dump memory mode so when you save the new game it creates the files we need. On the freecheat console go to Mem Manager -> SAVEDATE Manager -> Operate Mode -> Dump. Now hit X to back out to where you can confirm to save the game. Save the game to the memory card.

6. Now exit the game and enable USB to browse your memory stick and go to /FreeCheat/SAVEDATA/ and you will see 2 files. I have:

ULJM-05500.key and ULJM-05500_0.sav

You only need to rename the ULJM-05500.key file to ULJM05500.bin removing the "-" and renaming extention to .bin. Copy this file into /PSP/GAME/SED/gamekey directory on the memory stick.

7. Backup the new save game that you created from /PSP/SAVEDATA/ to your computer for later.

8. Copy your corrupted save game from computer back to /PSP/SAVEDATA/

9. Run SED and it will load a list of save games you have. Press /\ (Triangle) on your corrupted save game and press O on the top option. Then select "Yes" and hit O again to decrypt your corrupted save game to a .bin file on the root of the card. Mine is called: ULJM005500.bin

10. Now copy your new saved game you backed up on the computer back to the /PSP/SAVEDATA/ directory. The directory of the saved game should match the name of the .bin file you just created. If it doesnt rename the .bin file to match it.

11. Load up SED again and find the new saved game and Press /\ (Triangle) to bring up the options and select the 2nd one down from the top and press O and select "Yes" and press O again. This will encrypt the .bin file you just created into the new saved game which is the old corrupted saved game info!

12. Now just start up the game and load your old save game that use to be corrupted!

I'd imagine this would work for any game that is having issues because of new firmware.

Hoowahman

FreeCheat Notes
ms0:/FreeCheat/fc_3xx.prx
 * Download FreeCheat here
 * The FreeCheat installation instructions are slightly broken, after installing it, you need to:
 * Create /SEPLUGINS if it doesn't exist.
 * Create /SEPLUGINS/game.txt or append to it - it should contain the following:

SaveDataE-D Notes

 * Download SaveDataE-D_cn here
 * SaveDataE-D_cn must be put into the /PSP/GAME5XX folder on the PSP (Used for homebrew compiled for 5.XX firmware).
 * Renaming the decrypted to savedata to fit the new savedata is the only way to do it, you can't rename the new savedata to fit the decrypted one.