Apollo Save Tool (PS3)
Apollo Save Tool is an application to manage save-game files on the PlayStation 3.
The apollo-ps3
homebrew app allows to download, unlock, patch and resign save-game files directly on your PS3.
Comments, ideas, suggestions? You can contact me on Twitter and on my website.
Features
- Easy to use: no crypto-key configuration or advanced setup needed.
- Standalone: no computer required, everything happens on the PS3.
- Automatic settings: auto-detection of PSID, IDPS and Account-ID settings.
- Multi-user: supports multiple user accounts.
Save Management
- Save files listing: quick access to all the save files on USB and the internal PS3 HDD (+ file details)
- Save SFO unlocking: allows the user to remove the copy-lock flag, enabling transfer of
Copying Prohibited
save files. - Save files patching: supports Bruteforce Save Data and Game Genie cheat patches to enhance your savegames.
- Save PFD resigning: allows the user to resign save files made by other users and consoles.
- Save downloading: easy access to an Online Database of save-game files to download straight to your PlayStation.
- Save file conversion: converts and resigns PS1 and PS2 save-game formats to PS3
.PSV
format.
Backup Management
- License exporting: easy backup of user licenses to
.zip
and.rap
formats. - License importing: allows to import
.rap
files to user.rif
licenses.
PS2 Classics Management
- Memory card exporting: decrypt and export
.VME
memory cards. - Memory card importing: allows to import
.VM2
files to encrypted.VME
memcards. - ISO importing: import PS2
.ISO
files to.BIN.ENC
encrypted image format. - BIN.ENC exporting: decrypt and export
BIN.ENC
images to.ISO
.
Download
Get the latest version here.
Changelog
See the latest changes here.
Setup instructions
No special setup is needed. Just download the latest apollo-ps3.pkg
package and install it on your PlayStation 3.
On first run, the application will detect and setup the required user settings.
Data folders
PS3
PS3 | Folder |
---|---|
USB saves | your files must be placed on /dev_usb00x/PS3/SAVEDATA/ . |
HDD saves | files will be scanned from /dev_hdd0/home/000000XX/savedata/ , where XX is the current User ID . |
HDD licenses | /dev_hdd0/home/000000XX/exdata/ (*.rif ) |
USB licenses | /dev_usb00x/exdata/ (*.rap ) |
PS2
PS2 | Folder |
---|---|
USB saves | /dev_usb00x/PS2/SAVEDATA/ (*.xps , *.max , *.psu , *.cbs , *.sps ) |
VMC cards | /dev_usb00x/PS2/VMC/ (*.vmc ) |
VME cards | /dev_usb00x/PS3/EXPORT/PS2SD/ |
PSV saves | /dev_usb00x/PS3/EXPORT/PSV/ |
HDD VME cards | /dev_hdd0/home/000000XX/ps2emu2_savedata/ , where XX is the current User ID . |
HDD VM2 cards | /dev_hdd0/savedata/vmc/ |
HDD ISOs | /dev_hdd0/PS2ISO/ (*.bin , *.iso , *.bin.enc ) |
USB ISOs | /dev_usb00x/PS2ISO/ (*.bin , *.iso , *.bin.enc ) |
PS1
PS1 | Folder |
---|---|
USB saves | /dev_usb00x/PS1/SAVEDATA/ (*.mcs , *.psx ) |
PSV saves | /dev_usb00x/PS3/EXPORT/PSV/ |
HDD VM1 cards | /dev_hdd0/savedata/vmc/ |
Usage
Using the application is simple and straight-forward:
- Move UP/DOWN to select the save-game file you want to patch, and press
. The patch screen will show the available fixes for the file. Select the patches and click
Apply
. - To view the item’s details, press
. It will open the context menu on the screen. Press
to return to the list.
- To reload the list, press
.
- Press L1/L2 or R1/R2 trigger buttons to move pages up or down.
Notes
- USB saves: your files must be placed on
/dev_usb000/PS3/SAVEDATA/
or/dev_usb001/PS3/SAVEDATA/
. - HDD saves: files will be scanned from
/dev_hdd0/home/000000XX/savedata/
, whereXX
is the currentUser ID
.
Overriding auto-detected settings
If you want to override the auto-detected IDs used by Apollo to resign the save-games, you can use the owners.xml
file.
For example:
<?xml version="1.0" encoding="UTF-8"?>
<apollo version="1.2.0">
<owner name="PS3 User">
<console idps="AAAAAAAAAAAAAAAA 0123456789ABCDEF" psid="FFFFFFFFFFFFFFFF 0123456789ABCDEF"/>
<user id="00000002" account_id="0123456789abcdef"/>
</owner>
<owner name="Other User">
<console idps="AAAAAAAAAAAAAAAA 0123456789ABCDEF" psid="FFFFFFFFFFFFFFFF 0123456789ABCDEF"/>
<user id="00000008" account_id="abcdef0123456789"/>
</owner>
</apollo>
The file must be saved on /dev_hdd0/game/NP0APOLLO/USRDIR/owners.xml
. Apollo will load the hard-coded values when launched, and you should
select the desired Owner from the Settings menu.
In the owners.xml
you need to define:
- Owner name
- User ID (e.g.:
00000123
) - Account ID (e.g.:
0123456789abcdef
) - Console PSID (e.g.:
FFFFFFFFFFFFFFFF 0123456789ABCDEF
) - Console IDPS is optional (only required for license import/export)
Online Database
The application also provides direct access to the Apollo online database of save-game files for PlayStation 3 games. These usually offer additional features such as completed games that can save you many hours of playing.
Currently, the list of available games and files is limited, but the project aims to add more save-games shared by the community.
Note: Downloaded save files must be resigned using Apollo before loading them in your games.
Screenshots
FAQs
-
Where I can get a save-game for XYZ game?
You can check sites like Brewology.com, and GameFAQs. Also, searching on Google might help.
-
I have a save-game file that I want to share. How can I upload it?
If you have a save file that is not currently available on the Online Database and want to share it, please check this link for instructions.
-
Why is it called Apollo?
Apollo was the twin brother of Artemis, goddess of the hunt. Since this project was born using the Artemis-GUI codebase, I decided to respect that heritage by calling it Apollo.
Credits
- Bucanero: Project developer
- Dnawrkshp: Artemis PS3
- Berion: GUI design
- flatz: SFO/PFD tools
- aldostools: Bruteforce Save Data
- aluigi: offzip/packzip
Building
You need to have installed:
- PS3 toolchain
- PSL1GHT SDK
- Tiny3D library
- polarSSL library
- dbglogger library (only required for debug logging)
Run make
to create a release build. After that, run make pkg
to create a .pkg
install file.
You can also set the PS3LOAD
environment variable to the PS3 IP address: export PS3LOAD=tcp:x.x.x.x
.
This will allow you to use make run
and send apollo-ps3.self
directly to the PS3Load listener.
To enable debug logging, build Apollo Save Tool with make DEBUGLOG=1
. The application will send debug messages to
UDP multicast address 239.255.0.100:30000
. To receive them you can use socat on your computer:
$ socat udp4-recv:30000,ip-add-membership=239.255.0.100:0.0.0.0 -
License
apollo-ps3
is released under the MIT License.