2024-02-04 13:46:14 +00:00
|
|
|
# GcToolKit
|
2024-01-21 12:21:32 +00:00
|
|
|
|
2024-02-04 13:46:14 +00:00
|
|
|
Tool to create 1:1 backups of PSV Game Cartridges
|
|
|
|
including CMD56 authenticationd data.
|
|
|
|
|
|
|
|
This can also be used to format, backup and restore the writable grw0 and mediaid sections of gamecarts.
|
2024-01-27 01:09:31 +00:00
|
|
|
|
|
|
|
This writes *.vci* files, (vita cartridge image) which is essentially
|
|
|
|
cmd56 authentication data + raw image of gc
|
|
|
|
|
2024-02-04 13:46:14 +00:00
|
|
|
Can run a backup over the network, to a offical memory card,
|
|
|
|
a USB device connected to a Vita TV or OTG on Vita 2k, or Accessory Port on Vita 1K
|
|
|
|
or host0 on Development Kits.
|
2024-01-27 01:54:11 +00:00
|
|
|
|
2024-02-04 13:40:00 +00:00
|
|
|
-- Credit
|
2024-02-04 13:41:42 +00:00
|
|
|
- <sup>The Crystal System</sup> Li- Programming the thing, VCI Format, Reverse engineering gamecart CMD56
|
2024-02-04 13:40:00 +00:00
|
|
|
- olebeck - CMD56 helps
|
|
|
|
- Robots System - Selecting music, choosing port numbers, ~~emotional support~~
|
|
|
|
- Princess of Sleeping - ExFAT Format code, CMD56 helps
|
|
|
|
- SKGLeba - psp2spl for F00D Code execution
|
|
|
|
- dots_tb - USB OTG
|
|
|
|
- EA Games 1997 - BGM Music from Dungeon Keeper 1 https://www.youtube.com/watch?v=RXfUV_z7i0c
|
|
|
|
|
2024-02-04 13:41:42 +00:00
|
|
|
-- OTG Compatiblity
|
2024-01-27 01:54:11 +00:00
|
|
|
|
|
|
|
This program allows backup vita GCs with a USB device connected via an OTG cable
|
|
|
|
however this only works with OTG cables with an external power source; or "Y-Cable"
|
|
|
|
for example this one for the Amazon Fire Stick https://www.amazon.com/ANDTOBO-Micro-Adapter-Power-Devices/dp/B083M1S6QT will work.
|
|
|
|
|
2024-02-04 13:41:42 +00:00
|
|
|
-- Difference between .vci and .psv formats
|
2024-01-27 01:09:31 +00:00
|
|
|
|
|
|
|
The main difference is how the keys stored.
|
|
|
|
in psvgamesd, the result of gc_auth_mgr_sm function 0x20 is stored,
|
|
|
|
this is the key required to decrypt the .RIF file
|
|
|
|
however this key is *actually* derived from the result of SHA256 hash functions
|
|
|
|
of some constants exchanged in packet20 and packet18 of gc authentication.
|
2024-01-27 01:25:41 +00:00
|
|
|
in .VCI the *input* to the SHA256 function are included instead.
|
2024-01-27 01:09:31 +00:00
|
|
|
SHA256 is a one-way function and so you cannot go backwards from
|
|
|
|
the data captured in psvgamesd to the packet20 and packet18 constants.
|
|
|
|
|
2024-01-27 01:25:41 +00:00
|
|
|
main advantage is that with VCI it would be thereotically possible to create a vita flash cartridge. .
|
|
|
|
this, also means that .VCI can be easily converted to .PSV, but .PSV cannot be converted back to VCI.
|
2024-01-27 01:09:31 +00:00
|
|
|
|
|
|
|
|
2024-01-27 01:10:24 +00:00
|
|
|
![gc authentication diagram](https://silica.codes/Li/GcDumper/raw/branch/main/diagram.png)
|