Skip to content

HRudyPlayZ/lpp-vita

 
 

Repository files navigation

Documentation Build Status

Description

Lua Player Plus Vita is the first lua interpreter made for the Sony PlayStation Vita.

The interpreter currently runs under LuaJIT 2.0.5 with slight additions from Lua 5.2.4 (for example the bit32 lib for bitwise operations). It has also a debug FTP server to correct your errors in runtime.

Official documentation: http://rinnegatamante.github.io/lpp-vita/

Features

Graphics
  • Advanced 2D Graphics Rendering (GPU).
  • Basic 3D Graphics Rendering (GPU).
  • Native support to 0BJ models.
  • Native support to TTF/PGF/PVF/OTF fonts.
  • Native support to BMP/PNG/JPG images.
  • Built-in rescaler to perform portings from lpp-3ds easily.
Multimedia
  • Complete sound system with support for:
    • WAVEform audio files (.wav) with PCM8/PCM16/ADPCM codecs.
    • Audio Interchange File Format audio files (.aif/.aiff) with PCM8/PCM16 codecs.
    • Moving Picture Expert Group-1/2 Audio Layer 3 audio files (.mp3) with MPEG-1 Audio Layer III/MPEG-2 Audio Layer III codecs.
    • Musical Instrument Digital Interface audio files (.midi).
    • Ogg Media audio files (.ogg/.opus) with Vorbis/Opus codecs.
  • Native support to PSHV video files.
Controls
  • Controls system with full console support.
  • Support to dualshock rumble feature for PSTV.
  • Support to home button locking/unlocking.
  • Support to lightbar color change for PSTV.
  • Support to gyroscope and accelerometer reading.
  • Support to both touchpads reading.
Network
  • Built-in debug FTP server.
  • Complete sockets system support.
  • Native support to HTTP requests.
  • Support to SSL (HTTPS) for file downloading.
System
  • Access to a lot of Sony syscalls.
  • I/O access for any filesystem.
  • Native support to ZIP archives.
  • Native support to SFO file descriptors.
  • Native support to SQLite databases.
Utilities
  • Timer system.
  • Advanced arithmetical functions support (math library).

Nightly Builds

We offer an automated builder service for our nightly builds powered by Azure Pipelines CI. Nightly builds are automatically updated at each new commit. To take advantage of this service, you can find a proper release here on GitHub with the Nightly tag.

Showcase

Here are some PSVITA homebrews made using Lua Player Plus Vita:

Games
Utilities
Emulators
Engines & Interpreters

Compiling the source

To correctly compile lpp-vita you'll need vitasdk installed and correctly set in your PATH environment variable. You'll also need the following libraries: zlib, libmpg123, libogg, libvorbis, libsndfile, vita2d, libftpvita, libpng, libjpeg-turbo, freetype, libspeexdsp, libopus, lua-jit, libdl. You can install most of them with vita-portlibs and EasyRPG Vita toolchain.

Lua Player Plus Vita supports different flags to enables some features:
-DSKIP_ERROR_HANDLING disables error handling for faster code execution.
-DPARANOID enables extra internal error handling.

Credits

  • vitasdk contributors.
  • xerpi for vita2d and debug FTP code.
  • gnmmarechal for testing the interpreter.
  • hyln9 for vita-luajit.
  • frangarcj for the help during 3D rendering feature addition.
  • TheFloW for some snippets i used and some ideas i borrowed.
  • Misledz for the Lua Player Plus logo.
  • EasyRPG Team for the Audio Decoder used for Sound module.

About

Lua Player Plus for PSVITA. Documentation on: http://rinnegatamante.github.io/lpp-vita/

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 91.0%
  • C++ 8.9%
  • Other 0.1%