Various Vita / PSTV Tools and utilities for the PC. Decrypts and Unpacks PS Vita PKG files. Write a raw disk image to a removable device or backup a removable. You can display lists of music, image, and video files stored on your computer and transfer the files to your PS Vita system. You can also transfer music, image, and video files in the opposite.
Vita SDK is an open source toolchain for PlayStation® Vita development. This allows you to create applications, games, and more (homebrew) to run on hacked Vita consoles. You can find more information on the hack here.
Prerequisite
Linux
Install the following (adapt the command for your system): apt-get install make git-core cmake python
OSX
- Install either brew or MacPorts
- Run either
brew install wget cmake
orport install wget cmake
.
Windows
If you have Bash on Ubuntu on Windows, then the recommended way is to follow the Linux directions above. Otherwise, continue reading.
- Install msys2
- Run mingw64 shell and install the dependencies:
pacman -Su make git cmake tar mingw64/mingw-w64-x86_64-libwinpthread-git
Installing
Set the environment variable VITASDK
to be the install destination for Vita SDK. We recommend using /usr/local/vitasdk
. We also recommend making the change to your .bashrc
or equivalent (.bash_profile
on OSX) since using the toolchain requires VITASDK
to be set.
Download the host package manager and install to $VITASDK
This will install the toolchain and the most common libraries (including zlib, freetype, libvita2d, taihen and more).
Updating
With vitasdk installed and in your PATH
, just run vitasdk-update
to get the latest toolchain build.
Removing
To remove all traces of Vita SDK, just delete your $VITASDK
directory. You can then reverse the steps in installing the prerequisite.
Writing Code
The APIs are gathered from reversing the Vita's firmware. It includes everything you can do with the system. It is recommended that you start by cloning the samples and by reading through them and understanding them. The environment is POSIX but the true power comes from the Sony specific APIs.
Plugins and Extensions
It is highly recommended that you are familiar with writing homebrews before attempting to write a plugin, which is significantly more difficult to do. Advanced developers can check out taiHEN for a substrate that allows you to hook system functions.
Building
Building is done with CMake and you should familiarize yourself with the hello world CMake file to better understand how it works. SELF is the executable format that the Vita runs and the included CMake macro vita_create_self
will build it for you. VPK is the homebrew package format and is an archive of the SELF along with data files and LiveArea and is done by the CMake macro vita_create_vpk
. VPK is what is installed to the Vita as a bubble.
Running
To run homebrew, you need a hacked Vita or PS TV. Currently the only hack is HENkaku which requires firmware 3.60. Once you installed HENkaku, open up molecularShell and copy your built VPK to ux0:data
through FTP. You can then install it as a bubble.
Debugging
Ps Vita Img Tool Dmg Files
Currently, there is minimal debugging support. If your app crashes, a core dump will be generated in ux0:data
. You can then parse the core dump to figure out what caused the crash. If you would like to help contribute to the Vita SDK project, we would love to have a debugger for the system.
Porting libraries
vitasdk ships with a flexible makepkg
-based build system for building packages that can later be installed into the SDK. To get started, clone vitasdk/packages, cd
into a directory with a VITABUILD
file and run vita-makepkg
. Once the package is built, you can install it with vdpm ./name-version-arm.tar.xz
.
If you want to write your own VITABUILD
file, here are a few examples that you can follow: a library using autotools-style build, a library using CMake, and a library where a Vita-specific patch is required.
Pokemon black 2 desmume download. Thanks to the Vita SDK team for creating everything! The logo was designed by @Acemad_.
Ps Vita Img Tool Dmg File Extension
You can find most of us in the #vitasdk room in FreeNode IRC. If you have any questions or need any help, don't hesitate to ask! We also have a forums for discussions and a wiki for details on reversing engineering the Vita.
Run the tool without any arguments to see how to use it. Detailed explanation is below.
Note: The Linux version requires libgcrypt
to be installed.
Usage
psvimg-extract
This is used to extract .psvimg
files. The extracted output includes a directory for each backup set (e.g: ur0:appmeta
, ux0:iconlayout.ini
, and ur0:tmp/registry
are three separate sets). Each backup set contains zero or more files and directories. A special file VITA_PATH.TXT
is created for each set to remember what the original path was before extraction (this is used for repacking). A set can be only a single file (for example ux0:iconlayout.ini
). In that case, the file VITA_DATA.BIN
is created to host the contents of the file.
psvmd-decrypt
This decrypts and decompresses .psvmd
files. The contents of which are defined in psvimg.h
. This contains information such as the firmware version of the system that created the backup and the unique PSID of the system. Extracting this file is not required for repacking and is provided for reverse engineering/debugging purposes.
psvimg-create
This repacks extracted files and creates the associated .psvimg
and .psvmd
files. If you have a decrypted.psvmd
, you may pass it in with -m
and the tool will reuse as many fields as possible (exception: size fields). No validity checks will be performed. If you do not have a decrypted .psvmd
, you should use the -n
option and specify the name of the backup. You should use the same name (the file name without the .psvimg
extension) when repacking because CMA does check for a valid name. For example, if you are repacking license.psvimg
, you should specify -n license
.
The pack input directory should follow the same format as the output of psvimg-extract
. The means a separate directory for each backup set (there may only be one set, in which your input directory will contain one subdirectory) each with a VITA_PATH.TXT
file specifying the Vita path and optionally a VITA_DATA.BIN
file if the set is a file.
Note that CMA does check the paths of the backup sets. Trying to add a backup set with a custom path may result in failure.
psvimg-keyfind
This is a brute-force backup key find tool. You should generate a valid partials.bin
file using the provided 'dump_partials' Vita homebrew that runs on HENkaku enabled consoles. You can generate partials for other people as well if you know their AID. The partials.bin
file does not contain any console-unique information but is derived from the provided PSN AID. The AID is the 16 hex characters in your CMA backup path. For example, if I wish to decrypt PS Vita/PGAME/xxxxxxxxxxxxxxxx/NPJH00053/game/game.psvimg
then my AID is xxxxxxxxxxxxxxxx
.
Ps Vita Img Tool Dmg File Download
Linux
Install the following (adapt the command for your system): apt-get install make git-core cmake python
OSX
- Install either brew or MacPorts
- Run either
brew install wget cmake
orport install wget cmake
.
Windows
If you have Bash on Ubuntu on Windows, then the recommended way is to follow the Linux directions above. Otherwise, continue reading.
- Install msys2
- Run mingw64 shell and install the dependencies:
pacman -Su make git cmake tar mingw64/mingw-w64-x86_64-libwinpthread-git
Installing
Set the environment variable VITASDK
to be the install destination for Vita SDK. We recommend using /usr/local/vitasdk
. We also recommend making the change to your .bashrc
or equivalent (.bash_profile
on OSX) since using the toolchain requires VITASDK
to be set.
Download the host package manager and install to $VITASDK
This will install the toolchain and the most common libraries (including zlib, freetype, libvita2d, taihen and more).
Updating
With vitasdk installed and in your PATH
, just run vitasdk-update
to get the latest toolchain build.
Removing
To remove all traces of Vita SDK, just delete your $VITASDK
directory. You can then reverse the steps in installing the prerequisite.
Writing Code
The APIs are gathered from reversing the Vita's firmware. It includes everything you can do with the system. It is recommended that you start by cloning the samples and by reading through them and understanding them. The environment is POSIX but the true power comes from the Sony specific APIs.
Plugins and Extensions
It is highly recommended that you are familiar with writing homebrews before attempting to write a plugin, which is significantly more difficult to do. Advanced developers can check out taiHEN for a substrate that allows you to hook system functions.
Building
Building is done with CMake and you should familiarize yourself with the hello world CMake file to better understand how it works. SELF is the executable format that the Vita runs and the included CMake macro vita_create_self
will build it for you. VPK is the homebrew package format and is an archive of the SELF along with data files and LiveArea and is done by the CMake macro vita_create_vpk
. VPK is what is installed to the Vita as a bubble.
Running
To run homebrew, you need a hacked Vita or PS TV. Currently the only hack is HENkaku which requires firmware 3.60. Once you installed HENkaku, open up molecularShell and copy your built VPK to ux0:data
through FTP. You can then install it as a bubble.
Debugging
Ps Vita Img Tool Dmg Files
Currently, there is minimal debugging support. If your app crashes, a core dump will be generated in ux0:data
. You can then parse the core dump to figure out what caused the crash. If you would like to help contribute to the Vita SDK project, we would love to have a debugger for the system.
Porting libraries
vitasdk ships with a flexible makepkg
-based build system for building packages that can later be installed into the SDK. To get started, clone vitasdk/packages, cd
into a directory with a VITABUILD
file and run vita-makepkg
. Once the package is built, you can install it with vdpm ./name-version-arm.tar.xz
.
If you want to write your own VITABUILD
file, here are a few examples that you can follow: a library using autotools-style build, a library using CMake, and a library where a Vita-specific patch is required.
Pokemon black 2 desmume download. Thanks to the Vita SDK team for creating everything! The logo was designed by @Acemad_.
Ps Vita Img Tool Dmg File Extension
You can find most of us in the #vitasdk room in FreeNode IRC. If you have any questions or need any help, don't hesitate to ask! We also have a forums for discussions and a wiki for details on reversing engineering the Vita.
Run the tool without any arguments to see how to use it. Detailed explanation is below.
Note: The Linux version requires libgcrypt
to be installed.
Usage
psvimg-extract
This is used to extract .psvimg
files. The extracted output includes a directory for each backup set (e.g: ur0:appmeta
, ux0:iconlayout.ini
, and ur0:tmp/registry
are three separate sets). Each backup set contains zero or more files and directories. A special file VITA_PATH.TXT
is created for each set to remember what the original path was before extraction (this is used for repacking). A set can be only a single file (for example ux0:iconlayout.ini
). In that case, the file VITA_DATA.BIN
is created to host the contents of the file.
psvmd-decrypt
This decrypts and decompresses .psvmd
files. The contents of which are defined in psvimg.h
. This contains information such as the firmware version of the system that created the backup and the unique PSID of the system. Extracting this file is not required for repacking and is provided for reverse engineering/debugging purposes.
psvimg-create
This repacks extracted files and creates the associated .psvimg
and .psvmd
files. If you have a decrypted.psvmd
, you may pass it in with -m
and the tool will reuse as many fields as possible (exception: size fields). No validity checks will be performed. If you do not have a decrypted .psvmd
, you should use the -n
option and specify the name of the backup. You should use the same name (the file name without the .psvimg
extension) when repacking because CMA does check for a valid name. For example, if you are repacking license.psvimg
, you should specify -n license
.
The pack input directory should follow the same format as the output of psvimg-extract
. The means a separate directory for each backup set (there may only be one set, in which your input directory will contain one subdirectory) each with a VITA_PATH.TXT
file specifying the Vita path and optionally a VITA_DATA.BIN
file if the set is a file.
Note that CMA does check the paths of the backup sets. Trying to add a backup set with a custom path may result in failure.
psvimg-keyfind
This is a brute-force backup key find tool. You should generate a valid partials.bin
file using the provided 'dump_partials' Vita homebrew that runs on HENkaku enabled consoles. You can generate partials for other people as well if you know their AID. The partials.bin
file does not contain any console-unique information but is derived from the provided PSN AID. The AID is the 16 hex characters in your CMA backup path. For example, if I wish to decrypt PS Vita/PGAME/xxxxxxxxxxxxxxxx/NPJH00053/game/game.psvimg
then my AID is xxxxxxxxxxxxxxxx
.
Ps Vita Img Tool Dmg File Download
Img Tool 2.0
The -n
option specifies the number of threads to run. On Linux, each thread tries to run on a separate processor. On OSX/Windows, it is up to the scheduler to make such decisions. You should not specify too high of a number here, as running multiple threads on a single CPU will result in diminishing returns. A good rule of thumb is to specify the number of CPU cores on your system.