Skip to content

PS Vita

xfangfang edited this page Feb 19, 2025 · 1 revision

Building the demo for PSV

  • install VITASDK
  • (GLES2.0 Only) install PVR_PSP2 headers and libs. refer to: SDL/vita.yaml
  • (GLES2.0 Only) put *.suprx files (PVR_PSP2) to psv/module
  • Unlock unsafe mode in System Settings/HENkaku

(GLES2.0 Only) We only need: libGLESv2.suprx libgpu_es4_ext.suprx libIMGEGL.suprx libpvrPSP2_WSEGL.suprx
(GLES2.0 Only) Overclock ES4(GPU) to 166MHz or higher for a smoother experience.

# 1. OpenGL ES 2.0
cmake -B build_psv -DPLATFORM_PSV=ON
make -C build_psv borealis_demo.vpk -j$(nproc)

# 2. OpenGL ES 2.0; Using Docker image
docker run --rm -v $(pwd):/src/ xfangfang/vitasdk_sdl2_gles2:latest \
  "cmake -B build -G Ninja -DPLATFORM_PSV=ON -DUSE_SYSTEM_SDL2=ON -DCMAKE_BUILD_TYPE=Release && \
   cmake --build build"

# 3. GXM
cmake -B build_psv -DPLATFORM_PSV=ON -DUSE_GXM=ON
make -C build_psv borealis_demo.vpk -j$(nproc)

My daily development experience on PSV

  1. Install PrincessLog to psv.(This can help display the log, see their README for more info)
  2. Install vitacompanion to psv.(Sending updated files to psv without fully installing a vpk)
  3. Install the borealis_demo.vpk we built before.
  4. Run nc -kl -w 3 9999 in Your computer. (Working as a logging server)
  5. After modifying the code, run:
make -j$(nproc) && \
mv borealis_demo.self eboot.bin && \
curl --ftp-method nocwd -T eboot.bin ftp://192.168.1.140:1337/ux0:/app/BRLS00000/ && \
echo launch BRLS00000 | nc 192.168.1.140 1338
  1. If your app crash, you can run the following command under the build directory to parse the dump file:
docker run --rm -it -v $(pwd):/src xfangfang/vita_parse ftp://192.168.1.140:1337 borealis_demo

192.168.1.140 is the ip address of my psv
BRLS00000 is the demo app ID
For me using PSMLogUSB with psmlogusb-client is more stable than PrincessLog.

Clone this wiki locally