Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Lua Player Plus Vita: Difference between revisions

From GameBrew
m (Text replacement - "GameBrew!" to "GameBrew")
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{#seo:
|title=Vita Homebrew Apps (Utilities) - GameBrew
|title_mode=append
|image=luaplayerplusvita.jpg
|image_alt=Lua Player Plus Vita
}}
{{Infobox Vita Homebrews
{{Infobox Vita Homebrews
|title=Lua Player Plus Vita
|title=Lua Player Plus Vita
|image=luaplayerplusvita.jpg
|image=luaplayerplusvita2.png
|description=Lua interpreter for PSVITA.
|description=Lua interpreter for PS Vita.
|author=Rinnegatamante
|author=Rinnegatamante
|lastupdated=2020/01/16
|lastupdated=2020/01/16
|type=Utilities
|type=Other Apps
|version=nightly
|version=Nightly
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita.7z
|downloadraw=[https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita.7z r6] - [https://github.com/Rinnegatamante/lpp-vita/releases/tag/Nightly Nightly Download]
|website=https://rinnegatamante.it/site/psv_hbs.php
|website=https://wololo.net/talk/viewtopic.php?f=116&t=46242
|source=https://github.com/Rinnegatamante/lpp-vita
|source=https://github.com/Rinnegatamante/lpp-vita
|donation=https://www.patreon.com/Rinnegatamante
}}
}}
'''Lua Player Plus Vita''' is the first lua interpreter made for the Sony PlayStation Vita.
{{#seo:
|title=Vita Homebrew Apps (Utilities) - GameBrew
|title_mode=append
|image=luaplayerplusvita2.png
|image_alt=Lua Player Plus Vita
}}
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.
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/
[http://rinnegatamante.github.io/lpp-vita/ Official documentation].
 
==Features==
*Graphics:
** Advanced 2D Graphics Rendering (GPU).
** Basic 3D Graphics Rendering (GPU).
** Native support to OBJ models.
** Native support to TTF/PGF/PVF/OTF fonts.
** Native support to BMP/PNG/JPG images.
** Native support to GIF animated images.
** Built-in rescaler to perform portings from [[Lua Player Plus 3DS|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 MP4 video files with support for .srt and .vtt subtitles 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.
** Native support to apps installation/uninstallation.
*Utilities:
** Timer system.
** Advanced arithmetical functions support (math library).


== Features ==
==User guide==
===Graphics ===
===Homebrew Showcase===
* Advanced 2D Graphics Rendering (GPU).
Here are some PS Vita homebrews made using Lua Player Plus Vita.
* Basic 3D Graphics Rendering (GPU).
* Native support to OBJ models.
* Native support to TTF/PGF/PVF/OTF fonts.
* Native support to BMP/PNG/JPG images.
* Native support to GIF animated images.
* Built-in rescaler to perform portings from [https://github.com/Rinnegatamante/lpp-3ds lpp-3ds] easily.


=== Multimedia ===
Games:
* Complete sound system with support for:
* [[VitaSudoku]]
** WAVEform audio files ('''.wav''') with PCM8/PCM16/ADPCM codecs.
* [[4Rows Vita|4Rows]]
** Audio Interchange File Format audio files ('''.aif/.aiff''') with PCM8/PCM16 codecs.
* [[Flppy Bird Vita|Flppy Bird]]
** Moving Picture Expert Group-1/2 Audio Layer 3 audio files ('''.mp3''') with MPEG-1 Audio Layer III/MPEG-2 Audio Layer III codecs.
* [[DeathRun To Vita]]
** Musical Instrument Digital Interface audio files ('''.midi''').
* [[Super Hero Chronicles Vita|Super Hero Chronicles]]
** Ogg Media audio files ('''.ogg/.opus''') with Vorbis/Opus codecs.
* [[vitaWanted]]
* Native support to MP4 video files with support for '''.srt''' and '''.vtt''' subtitles files.
* [[Labyrinth 3D Vita|Labyrinth 3D]]
* [[Resident Evil CODE Vita|Resident Evil CODE:Vita]]
* [[Lua Game of Life Vita|Lua Game of Life]]
* [[Galactic Federation Vita|Galactic Federation]]
* [[Starfield Vita]]
* [[EUCLIOD Vita|EUCLIOD]]
* [[Crazy Traffic Jam 3D Vita|Crazy Traffic Jam 3D]]
* [[Zombiebound Vita|Zombiebound]]
* [[Tetromino Vita|vita-tetromino]]
* [[VitaHangman]]
* [[Tetromino - Touhou Edition Vita|Tetromino: Touhou Edition]]
* [[Vita Hangman - Touhou Edition|Vita Hangman: Touhou Edition]]
* [[Cookie Clicker Vita|Cookie Clicker]]
* [[Vitamon GO]]
* [[vita-chain]]
* [[Rocket Tank Vita|ViTanks (Rocket Tank)]]


=== Controls ===
Utilities:
* Controls system with full console support.
* [[Moon Whitelister Vita|Moon Whitelister]]
* Support to dualshock rumble feature for PSTV.
* [[LuaIrc Vita|luaIrc]]
* Support to home button locking/unlocking.
* [[RinCheat SE Vita|rinCheat SE]]
* Support to lightbar color change for PSTV.
* [[Simple Text Editor Vita|Simple Text Editor]]
* Support to gyroscope and accelerometer reading.
* [[EPSP Bubble Installer Vita|ePSP Bubble Installer]]
* Support to both touchpads reading.
* [[Vita Object Loader]]
* [[Voice Recorder Vita]]
* [[Pro Camera Vita]]
* [[Notepad Vita]]
* [[Video Bubbles Creator Vita|Video Bubbles Creator]]
* [[VitaGraphs]]
* [[SwitchView UI Vita|SwitchView UI]]


===Network ====
Emulators:
* Built-in debug FTP server.
* [[MicroCHIP Vita|MicroCHIP]]
* Complete sockets system support.
* Native support to HTTP requests.
* Support to SSL (HTTPS) for file downloading.


=== System ===
Engines and Interpreters:
* Access to a lot of Sony syscalls.
* [[RayCast3D Vita|RayCast3D Engine]]
* I/O access for any filesystem.
* [[March22 Lua Vita|March22]]
* Native support to ZIP archives.
* Native support to SFO file descriptors.
* Native support to SQLite databases.
* Native support to apps installation/uninstallation.


=== Utilities ===
==Screenshots==
* Timer system.
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita3.png
* Advanced arithmetical functions support (math library).
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita4.png


== Nightly Builds ==
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita5.png
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.
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita6.png


==Media==
==Media==
'''Lua Player Plus Vita (lpp-vita) - 3D Rendering (Render Module) showcase''' ([https://www.youtube.com/watch?v=J0ayfk5aYok Rinne4Fun]) <br>
<youtube>J0ayfk5aYok</youtube>
<youtube>J0ayfk5aYok</youtube>
==Screenshots==
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita-01.jpg
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita-02.jpg
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita-03.jpg
https://dlhb.gamebrew.org/vitahomebrews/luaplayerplusvita-04.jpg
== Showcase ==
Here are some PSVITA homebrews made using Lua Player Plus Vita:
=== Games ===
* [http://wololo.net/talk/viewtopic.php?f=116&t=46423 VitaSudoku]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46253 4Rows]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46593 Flppy Bird]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46567 Deathrun to Vita]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46677 Super Hero Chronicles]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46726 vitaWanted]
* [http://wololo.net/talk/viewtopic.php?f=116&t=46845 Labyrinth 3D]
* [http://wololo.net/talk/viewtopic.php?f=52&t=47380 Resident Evil CODE:Vita]
* [https://github.com/domis4/lua-gameoflife/ Lua Game of Life]
* [http://vitadb.rinnegatamante.it/#/info/206 Galactic Federation]
* [http://vitadb.rinnegatamante.it/#/info/128 Starfield Vita]
* [http://vitadb.rinnegatamante.it/#/info/263 EUCLIOD]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48358 Crazy Traffic Jam 3D]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48583 Zombiebound]
* [https://github.com/svennd/vita-tetromino vita-tetromino]
* [https://vitadb.rinnegatamante.it/#/info/306 VitaHangman]
* [https://vitadb.rinnegatamante.it/#/info/376 Tetromino: Touhou Edition]
* [https://vitadb.rinnegatamante.it/#/info/379 Vita Hangman: Touhou Edition]
* [https://vitadb.rinnegatamante.it/#/info/351 Cookie Clicker]
* [https://vitadb.rinnegatamante.it/#/info/353 Vitamon GO]
* [https://vitadb.rinnegatamante.it/#/info/339 vita-chain]
* [https://vitadb.rinnegatamante.it/#/info/472 ViTanks]
=== Utilities ===
* [https://github.com/gnmmarechal/moon-whitelister Moon Whitelister]
* [http://wololo.net/talk/viewtopic.php?f=116&t=47107 luaIrc]
* [https://github.com/Rinnegatamante/rinCheat/tree/master/SE_module rinCheat SE]
* [http://wololo.net/talk/viewtopic.php?f=116&t=47018 Simple Text Editor]
* [http://vitadb.rinnegatamante.it/#/info/124 ePSP Bubble Installer]
* [http://wololo.net/talk/viewtopic.php?f=116&t=47982 Vita Object Loader]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48444 Voice Recorder Vita]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48379 Pro Camera Vita]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48500 Notepad Vita]
* [http://wololo.net/talk/viewtopic.php?f=116&t=48581 Video Bubbles Creator]
* [https://vitadb.rinnegatamante.it/#/info/363 VitaGraphs]
* [https://vitadb.rinnegatamante.it/#/info/338 SwitchView UI]
=== Emulators ===
* [http://wololo.net/talk/viewtopic.php?f=116&t=48620 MicroCHIP]
=== Engines &amp; Interpreters ===
* [http://wololo.net/talk/viewtopic.php?f=116&t=46379 RayCast3D Engine]
* [http://wololo.net/talk/viewtopic.php?f=116&t=47068 March22]


==Changelog==
==Changelog==
'''nightly'''
https://github.com/Rinnegatamante/lpp-vita/releases
* [https://github.com/Rinnegatamante/lpp-vita/commit/6bebb9551e844993b22b2561846e24c34c9acf98 6bebb95] Added System.extractPbp and PBP support to System.extractSfo.
* [https://github.com/Rinnegatamante/lpp-vita/commit/4ab3b2db5808b83b2d788109a314273c0ff30a5d 4ab3b2d] Fixed an issue causing extracted title from SFO to be corrupted sometimes.
* [https://github.com/Rinnegatamante/lpp-vita/commit/f7c087397de687f7b3939a358a30961ea991892f f7c0873] Fix for video looping not properly working.
* [https://github.com/Rinnegatamante/lpp-vita/commit/b2bd0d08c737d3e553051ab934ad7814c5539e24 b2bd0d0] Unloading scePromoterUtil whenever used to prevent memleak inside scePaf.
* [https://github.com/Rinnegatamante/lpp-vita/commit/332df670041301523d08768c9384f00b47ef2cb4 332df67] Fix compilation with latest vdpm packages.
* [https://github.com/Rinnegatamante/lpp-vita/commit/571bdcd41bdfa8b900b1c034d90e69454f135f2c 571bdcd] Update to LuaJIT 2.1 ([https://github.com/Rinnegatamante/lpp-vita/pull/63 #63])
* [https://github.com/Rinnegatamante/lpp-vita/commit/eeb0c77a175e84da5c04915d82dd43785a929085 eeb0c77] Added Camera sample and fixed RayCast3D sample.
* [https://github.com/Rinnegatamante/lpp-vita/commit/777fb33ccb1ae014adbeb66b443f9431ded1e3ff 777fb33] Updated Keyboard, 3D Cube and 3D Model samples to use the new API ([https://github.com/Rinnegatamante/lpp-vita/pull/62 #62])
* [https://github.com/Rinnegatamante/lpp-vita/commit/778da41e3eba5b8ca5fba90007f62e22f3f97234 778da41] Fixed Database callback for multiple column SELECT
* [https://github.com/Rinnegatamante/lpp-vita/commit/a260def37db0f691525eee2757ed3c9a334209b9 a260def] Fixed a bug causing Database.execQuery to close opened database
* [https://github.com/Rinnegatamante/lpp-vita/commit/55ec1041e3e28a69d441f381470d134081b77349 55ec104] Fixed a bug causing Screen.getPixel to return incorrect pixels.
* [https://github.com/Rinnegatamante/lpp-vita/commit/a7158275f6bed899fc63efe5a0b88e62e7945454 a715827] Added Graphics.saveImage function.
* [https://github.com/Rinnegatamante/lpp-vita/commit/5e638b97fd7cdcf046d111c00837829018764971 5e638b9] Fixed an out of bounds bug in System.takeScreenshot.
* [https://github.com/Rinnegatamante/lpp-vita/commit/2d42c2106ff014065c818e5e6b786255c4ddf183 2d42c21] Added possibility to take paletted PNG screenshots.
* [https://github.com/Rinnegatamante/lpp-vita/commit/52c0a23f3b9ace1700de3a994bab92255ce32353 52c0a23] Fixed a potential out of bounds in Graphics.loadImageAsync ([https://github.com/Rinnegatamante/lpp-vita/pull/60 #60])
* [https://github.com/Rinnegatamante/lpp-vita/commit/8bbb7562d5752415625262e58d9a9c88cd0983a6 8bbb756] Added Graphics.loadImageAsync ([https://github.com/Rinnegatamante/lpp-vita/pull/59 #59])
* [https://github.com/Rinnegatamante/lpp-vita/commit/9e0906f02fa2a0b91a9e3ac356a77379dba6b894 9e0906f] Tpo fixes in documentation.
* [https://github.com/Rinnegatamante/lpp-vita/commit/cadb240ed4dbe909ef9d965038099e8902e7b6d1 cadb240] Move to GitHub Actions for documentation deploying.
* [https://github.com/Rinnegatamante/lpp-vita/commit/8124c469d6b8c43d1567b253a3ba13c6e0dcaa67 8124c46] Added functions to calculate text width/height in Font module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/0538bc79983489ab0257b26265fd12159ebd9e77 0538bc7] Added System.unmountMountpoint.
* [https://github.com/Rinnegatamante/lpp-vita/commit/1a70f2935935831410cd85f0605eb13f84403646 1a70f29] Added functions to load/unload plugins.
* [https://github.com/Rinnegatamante/lpp-vita/commit/b2f5ca985986ee4617cb9e236b5ab6392c087d65 b2f5ca9] Removing vita-libdl build stage in nightly builder. ([https://github.com/Rinnegatamante/lpp-vita/pull/56 #56])
* [https://github.com/Rinnegatamante/lpp-vita/commit/a67ef3ee3a4686b9fcc5f5bd19b003a700b99428 a67ef3e] Fix for erroneous return value desc of System.getBatterLife
* [https://github.com/Rinnegatamante/lpp-vita/commit/c0454bc401179d5e02ad9caab6c6e4f92cca9cfe c0454bc] Fix compilation.
* [https://github.com/Rinnegatamante/lpp-vita/commit/3dff18e5083b5f2288e7bcac51e0dce69ed3e70c 3dff18e] Added support for animated GIF images.
* [https://github.com/Rinnegatamante/lpp-vita/commit/d917ca86245e8185dce5ec67052f34f80189d853 d917ca8] Typo fixes. ([https://github.com/Rinnegatamante/lpp-vita/pull/52 #52])
* [https://github.com/Rinnegatamante/lpp-vita/commit/3798b01b0344867effef2d8f6d07c42ac8ca8328 3798b01] Fix System.executeUri sample in the doc file. ([https://github.com/Rinnegatamante/lpp-vita/pull/51 #51])
* [https://github.com/Rinnegatamante/lpp-vita/commit/b1605ae36b69b6faf0246b4af1e97be6317e77c1 b1605ae] Added Gui.drawImage.
* [https://github.com/Rinnegatamante/lpp-vita/commit/3fb24f6c3a174cf5cc193d34533646018adfec35 3fb24f6] Properly adjusted supported formats for getTitle and getAuthor.
* [https://github.com/Rinnegatamante/lpp-vita/commit/6f57261e274a178a0cfb091839713e3f43f3e87b 6f57261] Typo fix.
* [https://github.com/Rinnegatamante/lpp-vita/commit/c5f8f2095a274b8f01c3fdbf7590e4ecd2bc3c2a c5f8f20] Addeed Registry module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/cd70c3cd8176007adf1c2d2478f1de542da26ae5 cd70c3c] Added System.resetTimer.
* [https://github.com/Rinnegatamante/lpp-vita/commit/ef092f69f87471a05bf2e03b8bf1a0edb4335507 ef092f6] Typo fix.
* [https://github.com/Rinnegatamante/lpp-vita/commit/35a44097f9b4813e65c10418c44fe824e1f0887f 35a4409] Added System.compressZip and System.addToZip.
* [https://github.com/Rinnegatamante/lpp-vita/commit/079d9c13d20263e04d4ed4ca80ad473fd134be44 079d9c1] Typo fix.
* [https://github.com/Rinnegatamante/lpp-vita/commit/40d68514000a265d2893a4379275cb55bbdd1345 40d6851] Replaced Nightly Builds link in documentation main page.
* [https://github.com/Rinnegatamante/lpp-vita/commit/906d5de9f94a5efd8e4e4cd50029ec5b505d522e 906d5de] Added a Video sample.
* [https://github.com/Rinnegatamante/lpp-vita/commit/d0bdfda1a1a74000478f47c2a2fa90d77642cf8e d0bdfda] Reworked Video module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/41f44da1c1b09aa5e35bb52577d558758bc087e6 41f44da] Added executables compression.
* [https://github.com/Rinnegatamante/lpp-vita/commit/1faf52c684cba4341c074b74be0029958c55f3ca 1faf52c] Minor adjustments and added System.copyFile.
* [https://github.com/Rinnegatamante/lpp-vita/commit/b5ab33018943f351be60e164246ee5cd8916858b b5ab330] Added Systeem.uninstallApp and System.doesAppExist.
* [https://github.com/Rinnegatamante/lpp-vita/commit/8f9f29da6af55677c2493ea7f748476a5d4a1481 8f9f29d] Added System.getBootParams.
* [https://github.com/Rinnegatamante/lpp-vita/commit/6a5d99a3fbcb7180296234da4a7e2d19a66a1990 6a5d99a] Made loop arg optional for Video and Sound modules.
* [https://github.com/Rinnegatamante/lpp-vita/commit/232111053f835cd01b8f505b435b632b33da6d5f 2321110] Added some more functions to Gui module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/4d95e5576c62d912bc77ae2533ea1bd5f47b4b45 4d95e55] Typo fixes in doc.
* [https://github.com/Rinnegatamante/lpp-vita/commit/da831e8768e34e8146388824524749db487bff4e da831e8] Added some more functions to Gui module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/ed89c26b51ca994579692f9b2a5fd27c4123e0ad ed89c26] Added Gui.drawComboBox.
* [https://github.com/Rinnegatamante/lpp-vita/commit/39897db22f2fb5070724740257c44002e220a394 39897db] Typo fixes in doc.
* [https://github.com/Rinnegatamante/lpp-vita/commit/b49ef9435427e3a089e1c975f38f72e6967b7ed7 b49ef94] Added Gui module.
* [https://github.com/Rinnegatamante/lpp-vita/commit/3fac99553f5b739e981482e5d7a333c08720700a 3fac995] Added System.installApp.
* [https://github.com/Rinnegatamante/lpp-vita/commit/fc788bdc32d3b3ddc4f90325347ab34b9462d348 fc788bd] Replaced old Archives unzipper with minizip.
* [https://github.com/Rinnegatamante/lpp-vita/commit/940cc603d9adf7679350ce84569579acd400589b 940cc60] Added sys app build support.
* [https://github.com/Rinnegatamante/lpp-vita/commit/48c5eda49de1325c596ac56a0121d386ecb1ff6c 48c5eda] Added references to port param for Controls functions in doc.
* [https://github.com/Rinnegatamante/lpp-vita/commit/80f4641289bce484d50d144c15453cd26e41c1ed 80f4641] Added System.shutdown and System.standby.
* [https://github.com/Rinnegatamante/lpp-vita/commit/b7932b3f2a979c0a30b586ea4ab008d48305ec09 b7932b3] Better documentation for mount/unmount functions.
* [https://github.com/Rinnegatamante/lpp-vita/commit/7b7bf982931c70b4811523ee8c014248855be358 7b7bf98] Removing opusfile pass during nightly building.
* [https://github.com/Rinnegatamante/lpp-vita/commit/59ae6a8dcb1b82caa37c1a514b592e729f2ef9bf 59ae6a8] Added mount/unmount partition functions.
* [https://github.com/Rinnegatamante/lpp-vita/commit/166012679b85558518416dded2951d7a8f66fe58 1660126] Moved to official sceMsgDialog implementation.
* [https://github.com/Rinnegatamante/lpp-vita/commit/d05c5849c1c2533ec7ba0eaa644a5f38e2176bea d05c584] Fix wrong argument check in the firmware functions ([https://github.com/Rinnegatamante/lpp-vita/pull/48 #48])
* [https://github.com/Rinnegatamante/lpp-vita/commit/163e80897749d49c8765760ca21b3245922717c7 163e808] Added functions to get system firmware version.
* [https://github.com/Rinnegatamante/lpp-vita/commit/cbee56953ab3490ff0161888e93baef9e2dfc288 cbee569] Added Patreon support link.
* [https://github.com/Rinnegatamante/lpp-vita/commit/2fafdc870b3c689668d2401b0aae29d1ef16c55c 2fafdc8] Added System.statFile and System.statOpenedFile.
* [https://github.com/Rinnegatamante/lpp-vita/commit/3c25b5fb3aaa7e0d65677f2485cfb70d5a1d3c33 3c25b5f] Renamed Keyboard.show to Keyboard.start to match documentation.
* [https://github.com/Rinnegatamante/lpp-vita/commit/60401c5cca51fd253bbe557ce90e78e60d93aae9 60401c5] Fix for certain param.sfo getting parsed wrongly.
* [https://github.com/Rinnegatamante/lpp-vita/commit/551cad8d642fa25713d6b48d34b207e77810d06b 551cad8] Added Graphics.getPixel.
* [https://github.com/Rinnegatamante/lpp-vita/commit/6eff896ae02ea14bf3772386874fdf9f756cf75b 6eff896] Added System.getFreeSpace and System.getTotalSpace.
* [https://github.com/Rinnegatamante/lpp-vita/commit/1909b8eff3ff72976bd72f57d7de018146d4e505 1909b8e] Updated Nightly Builds info.
* [https://github.com/Rinnegatamante/lpp-vita/commit/80ec18d7e2f8dc6bbc6d69959df3837363f35d54 80ec18d] Set up CI with Azure Pipelines.
 
This list of changes was [https://dev.azure.com/rinnegatamante/lpp-vita/_build/results?buildId=855&view=logs auto generated].
 
== 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 [https://ci.easyrpg.org/view/Toolchains/job/toolchain-vita/ EasyRPG Vita toolchain].<br />
<br />
Lua Player Plus Vita supports different flags to enables some features:<br />
'''-DSKIP_ERROR_HANDLING''' disables error handling for faster code execution.<br />
'''-DPARANOID''' enables extra internal error handling.<br />


== Credits ==
== Credits ==
* vitasdk contributors.
* vitasdk contributors.
* '''xerpi''' for vita2d and debug FTP code.
* xerpi for vita2d and debug FTP code.
* '''gnmmarechal''' for testing the interpreter.
* gnmmarechal for testing the interpreter.
* '''hyln9''' for vita-luajit.
* hyln9 for vita-luajit.
* '''frangarcj''' for the help during 3D rendering feature addition.
* frangarcj for the help during 3D rendering feature addition.
* '''TheFloW''' for some snippets i used and some ideas i borrowed.
* TheFloW for some snippets i used and some ideas i borrowed.
* '''Misledz''' for the Lua Player Plus logo.
* Misledz for the Lua Player Plus logo.
* '''Arkanite''' for providing a sample for sceAvPlayer used to implement the Video module.
* Arkanite for providing a sample for sceAvPlayer used to implement the Video module.
* '''EasyRPG Team''' for the Audio Decoder used for Sound module.
* EasyRPG Team for the Audio Decoder used for Sound module.
* '''lecram''' for gifdec usd for animated GIFs support.
* lecram for gifdec usd for animated GIFs support.


== External links ==
== External links ==
* Official Website - https://rinnegatamante.it/site/psv_hbs.php
* Official website - https://rinnegatamante.it/site/psv_hbs.php
* Github - https://github.com/Rinnegatamante/lpp-vita
* GitHub - https://github.com/Rinnegatamante/lpp-vita
* VitaDB - https://vitadb.rinnegatamante.it/#/info/290
* VitaDB - https://vitadb.rinnegatamante.it/#/info/290
* Wololo - https://wololo.net/talk/viewtopic.php?f=116&t=46242
[[Category:Revitalize Homebrew Competition]]

Latest revision as of 02:34, 2 July 2024

Lua Player Plus Vita
Luaplayerplusvita2.png
General
AuthorRinnegatamante
TypeOther Apps
VersionNightly
LicenseGPL-3.0
Last Updated2020/01/16
Links
r6 - Nightly Download
Website
Source
Support Author

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.

Features

  • Graphics:
    • Advanced 2D Graphics Rendering (GPU).
    • Basic 3D Graphics Rendering (GPU).
    • Native support to OBJ models.
    • Native support to TTF/PGF/PVF/OTF fonts.
    • Native support to BMP/PNG/JPG images.
    • Native support to GIF animated 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 MP4 video files with support for .srt and .vtt subtitles 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.
    • Native support to apps installation/uninstallation.
  • Utilities:
    • Timer system.
    • Advanced arithmetical functions support (math library).

User guide

Homebrew Showcase

Here are some PS Vita homebrews made using Lua Player Plus Vita.

Games:

Utilities:

Emulators:

Engines and Interpreters:

Screenshots

luaplayerplusvita3.png luaplayerplusvita4.png

luaplayerplusvita5.png luaplayerplusvita6.png

Media

Lua Player Plus Vita (lpp-vita) - 3D Rendering (Render Module) showcase (Rinne4Fun)

Changelog

https://github.com/Rinnegatamante/lpp-vita/releases

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.
  • Arkanite for providing a sample for sceAvPlayer used to implement the Video module.
  • EasyRPG Team for the Audio Decoder used for Sound module.
  • lecram for gifdec usd for animated GIFs support.

External links

Advertising: