Skip to content
PSVita bare-metal payload library and sample
C C++ Makefile
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
libbaremetal LCD: Display init implementation Nov 14, 2019
sample Sample: clear BSS Nov 7, 2019 Update README Dec 31, 2018

PSVita bare-metal payload sample

What's this?

This is a bare-metal payload sample that performs some hardware initialization, such as turning on the OLED display or HDMI controller, setting up a framebuffer, and reading the control buttons, among other things.

All the code in this project has been implemented by reverse engineering the PSVita OS and mimicking it to perform the required steps to carry out hardware initialization.

Simultaneously, I have also been updating and documenting with the findings obtained by reverse engineering the PSVita OS (such as register bits and initialization sequences).




  1. Copy baremetal-sample.bin to your PSVita
  2. Run vita-baremetal-loader

Memory card authentication:

For the Memory card authentication to work, you will have to place the key used by rmauth_sm's command 0x2 in the msif.c file.

Check this for more information.


Thanks to everybody who contributes to and helps reverse engineering the PSVita OS.

Specially the Team Molecule (formed by Davee, Proxima, xyz, and YifanLu), TheFloW, motoharu, and everybody at the HENkaku Discord channel.

You can’t perform that action at this time.