- Joined
- May 20, 2015
- Messages
- 939
- Trophies
- 0
- Age
- 26
- Location
- Jersey, Jersey
- Website
- www.twitter.com
- XP
- 1,942
- Country
Welcome to the (semi)official RetroArch/Libretro cores thread for PS Vita
("I THINK I got the right subforum this time" Edition!)
Small disclaimer: Make sure you are on Firmware 3.60 OR Firmware 3.65 with the latest HENkaku (Ensō) exploit!
For those new to Libretro and RetroArch, you can read about what the Libretro API is here, as well as a general explanation of RetroArch as a whole here! Relevant documentation is provided here. Feel free to ask more in the thread!
If any bugs are present in any of the Libretro cores or exist within the RetroArch UI itself on the PS Vita, and are not acknowledged in the main post, please report them here. The goal of the article is to provide as much information on what works and doesn't work currently alike on the PS Vita port of RetroArch and the Libretro cores.
Latest Stable Builds: RetroArch (Click me to download!)
Download both RetroArch.vpk and RetroArch_data.zip. Once downloaded, transfer the .vpk to your Vita's storage device (ux0 or etc.), extract the retroarch folder in RetroArch_data.7z to ux0:data, and install as usual via VitaShell. Configuration and data files are maintained in ux0:data/retroarch, while cores are in ux0:app/RETROVITA.
RetroArch is currently signed as a "safe homebrew"; this means protected/system folders such as "pspemu" will NOT be accessible through RetroArch by default! It is highly recommend to create a folder for ROMS in ux0:data/retroarch (Or another mountpoint, e.g. uma0:)
Latest Nightly Builds: http://buildbot.libretro.com/nightly/playstation/vita/ (Reminder that stability varies compared to the numbered releases!)
Changelog:
Currently Available cores (package name/emulator name/emulated console):
Current Performance: Thanks for the suggestion, Chesskid1!
Reminder, these are estimations and are not to judge overall performance of each core or RetroArch as a whole. Notable exceptions to each rule will be noted.
Consoles
Atari 2600 (Stella): Fullspeed.
Atari 7800 (ProSystem): Fullspeed.
Genesis/Mega Drive/Master System/Game Gear/CD (Genesis Plus GX): Fullspeed, consistent in both cartridge and Sega CD games. Sega 8-bits platforms run fine as well.
Genesis/Mega Drive/CD/32x (PicoDrive): Fullspeed, consistent in both cartridge and Sega CD games; less overhead than Genesis Plus GX. However, 32X games may run poorly (~40fps).
NES (FCEUmm): Fullspeed, consistent (This IS the NES, after all... (^^;; )
NES (Nestopia): Fullspeed, consistent (This IS the NES, after all... (^^;; )
Neo-Geo CD (NeoCD): Fullspeed in system menus, but inconsistent framerates in-game; expect ~50fps.
PC Engine (MednaFen): Fullspeed, consistent in HuCard and Super CD-ROM2 games.
PlayStation (PCSX Re-ARMed): HEAVILY dependent on game, expect anywhere from 60fps in 2D-based games to 30fps in some 3D-based titles.
SNES (Snes9x 2005): ~55fps - 60fps on standard games, ~50fps on SuperFX-powered games.
SNES (Snes9x 2005+): ~50fps - 60fps on standard games. Frame drops compared to Regular '05 Snes9x are noticeable, however, on select games.
SNES (Snes9x 2010): ~40fps on standard games; recommend using Snes9x 2005 instead.
Sega Saturn (Yabause): Basically nonfunctional, Proof-of-Concept only.
Vectrex: ~50fps, however this is fullspeed for Vectrex.
Computer Systems
MS-DOS (DOSBox): Functional, fairly slow, however; mapping instructions here.
ZX81 (81): ?
PC-9801 (NP2K): Functional, but fairly slow.
ZX Spectrum (Fuse): Full speed.
Handhelds
Atari Lynx (Handy): ~60fps
Game Boy (Gambatte/TGBDual): ~60fps
Game Boy Advance (gpSP): Generally fullspeed... when it works. Many games won't boot (Monkey Ball Jr., Payback), exhibit compatibility issues (Dragon Ball Z games, Golden Sun 2), or will display inaccuracies (Golden Sun games)
Game Boy Advance (VBA Next): ~40-50fps. 2D games will perform better, but anything more demanding (Golden Sun, 3D games) will be slow.
Neo-Geo Pocket (Color) (MednaFen): Fullspeed
Virtual Boy (MednaFen): ~25fps-30fps
WonderSwan (Mednafen): Fullspeed on WonderSwan and Color games alike
Arcade Systems
Final Burn Alpha: Varies by ROMset, generally better performance than MAME however.
CPS1 (Final Burn Alpha): 60fps, consistent.
CPS2 (Final Burn Alpha): 60fps, consistent.
Neo-Geo (Final Burn Alpha): 60fps, consistent.
FB Neo: Varies by ROMset, generally same performance when playing CPS1/2/NG, but others will be slow.
MAME 2000 (0.37b5): Varies by ROMset, generally full speed in most cases; may exhibit different performance from FBA.
MAME 2003 (0.78): Varies by ROMset, generally half-speed, if not slower; recommend using Final Burn Alpha or MAME 2000 (0.37b5) instead.
Engine Ports
2048: Working.
Cave Story (NXEngine): Fullspeed.
DOOM (PrBoom): Fullspeed. However, using "Linear" filtering on anything but fog will drop framerates to half-speed.
Quake (TyrQuake): 40fps-50fps with defaults, adjustable in settings.
Current Bugs:
Global
Rewind/Fast Forward currently cause sporadic performance hitches on Genesis Plus GX (Requires further investigation).
Core Specific
vecx_libretro: Sound pitch is an octave lower than original hardware?
fuse_libretro: Cannot load more than one ROM in a single session (Application Crash). To change/reset a game, a complete reload of the core is necessary (As "Reset" restarts the virtual ZX Spectrum; NOT re-loading the game).
Fixed Issues/Bugs
Please note that these bugs are currently a non-issue or fixed as of the latest Stable/Nightly builds. These remain purely for historical purposes and are not indicative of current state of RetroArch/Libretro cores.
Bios Files Required (Place in ux0:data/retroarch/system):
Deprecated; individual core prerequisites can be found on the official documentation (under "For Users -> Core Library -> Console Manufacturer -> Console Name (Core Name)")
Final Burn Alpha/MAME disclaimer: Final Burn Alpha uses a unique ROMset based off of MAME 0.140. MAKE SURE you are using sets marked as compatible with Final Burn Alpha v0.2.97.35 for that core. ONLY USE MAME sets with MAME itself, NOT Final Burn Alpha!
Thread is WIP. If you have any concerns, leave a post or message me.
Credit where credit's due to all the users who have assisted with RetroArch/Libretro, the Vita ports, and everyone who provides unofficial fixes, advice, and assets for use with Vita RetroArch/Libretro. Thank you!
("I THINK I got the right subforum this time" Edition!)
Small disclaimer: Make sure you are on Firmware 3.60 OR Firmware 3.65 with the latest HENkaku (Ensō) exploit!
For those new to Libretro and RetroArch, you can read about what the Libretro API is here, as well as a general explanation of RetroArch as a whole here! Relevant documentation is provided here. Feel free to ask more in the thread!
If any bugs are present in any of the Libretro cores or exist within the RetroArch UI itself on the PS Vita, and are not acknowledged in the main post, please report them here. The goal of the article is to provide as much information on what works and doesn't work currently alike on the PS Vita port of RetroArch and the Libretro cores.
Latest Stable Builds: RetroArch (Click me to download!)
Download both RetroArch.vpk and RetroArch_data.zip. Once downloaded, transfer the .vpk to your Vita's storage device (ux0 or etc.), extract the retroarch folder in RetroArch_data.7z to ux0:data, and install as usual via VitaShell. Configuration and data files are maintained in ux0:data/retroarch, while cores are in ux0:app/RETROVITA.
RetroArch is currently signed as a "safe homebrew"; this means protected/system folders such as "pspemu" will NOT be accessible through RetroArch by default! It is highly recommend to create a folder for ROMS in ux0:data/retroarch (Or another mountpoint, e.g. uma0:)
Latest Nightly Builds: http://buildbot.libretro.com/nightly/playstation/vita/ (Reminder that stability varies compared to the numbered releases!)
Changelog:
- 05/17/2020: 1.8.7 release build for PlayStation Vita (and other platforms) has been released! More information regarding the update can be found here.
- VITA - New cores 'Frodo' 'Lutro', 'Neko Project II', 'px68k' added.
- Improvements to Cheevos initialization when disabled, and other additions.
Currently Available cores (package name/emulator name/emulated console):
81_libretro.self - EightyOne 1.0a, Sinclair ZX81
2048_libretro.self - 2048 player
atari800_libretro.self -Atari800, Atari 8-bits platform [400/800(XL), 5200]
dosbox_libretro.self - DOSbox 0.74, MS-DOS Emulator
easyrpg_libretro.self - EasyRPG Player, RPGMaker 2000/2003 Game Player
ecwolf_libretro.self - ECWolf, Wolfenstein 3D[+ Spear of Destiny]
fbalpha_libretro.self - FB Alpha v0.2.97.44, Arcade Machine Emulator [Various]
fbalpha2012_libretro.self - FB Alpha 2012 v0.2.97.29, Arcade Machine Emulator [Various]
fbalpha2012_cps1_libretro.self - FB Alpha 2012 CPS1 v0.2.97.28, Capcom Play System [CPS1]
fbalpha2012_cps2_libretro.self - FB Alpha 2012 CPS2 v0.2.97.28, Capcom Play System II [CPS2]
fbalpha2012_neo_libretro.self - FB Alpha 2012 NeoGeo v0.2.97.29, SNK Neo-Geo AES/MVS
fbneo_libretro.self - FB Neo, Arcade Machine Emulator [Various] (Replaces complete FinalBurnAlpha)
fceumm_libretro.self - FCEUmm, Nintendo Entertainment System [+ FDS]
fmsx_libretro.self - fMSX, MSX 1/2 Emulator
freeint_libretro.self - FreeIntv, Mattel Intellivision
frodo_libretro.self - Frodo, Commodore 64
fuse_libretro.self - Fuse, ZX Spectrum
gambatte_libretro.self - Gambatte, Game Boy [+ Color]
gearboy_libretro.self - Gearboy, Game Boy [+ Color]
genesis_plus_gx_libretro.self - Genesis Plus GX, Sega Genesis/Mega Drive [+ Sega CD & Sega Master System & Sega Game Gear]
gpsp_libretro.self - gpSP, Game Boy Advance [GBA]
gw_libretro.self - Game & Watch, G&W Game Player
handy_libretro.self - Handy, Atari Lynx
hatari_libretro.self - Hatari, Atari ST [+ E + Falcon] Computers Family
lutro_libretro.self - Lutro, game creation engine
mame2000_libretro.self - MAME 0.37b5, Multiple Arcade Machine Emulator (Smallest ROMset, best performance)
mame2003_libretro.self - MAME 0.72, Multiple Arcade Machine Emulator (Bigger ROMset, less stable performance)
mame2003_plus_libretro.self - MAME 0.72+, Multiple Arcade Machine Emulator (Biggest ROMset, less stable performance)
mednafen_ngp_libretro.self - MednaFen NeoPop, Neo-Geo Pocket [+ Color] (High Accuracy)
mednafen_pce_fast_libretro.self - MednaFen PCE Fast, PC-Engine/TurboGrafx-16 [+ CD Super System]
mednafen_supergrafx_libretro.self - MednaFen SuperGrafx, PC-Engine SuperGrafx & TurboGrafx-16 [+ CD Super System]
mednafen_vb_libretro.self - MednaFen VB, Virtual Boy
mednafen_wswan_libretro.self - MednaFen WonderSwan, Bandai WonderSwan [+ Color]
mu_libretro.self - Mu, Palm Devices emulator
nekop2_libretro.self - Neko Project II, NEC PC9801/21 (Older)
neocd_libretro.self - NeoCD, Neo-Geo CD[Z]
nestopia_libretro.self - Nestopia, Nintendo Entertainment System [NES + FDS] (Cycle-Accurate, highest accuracy)
np2kai_libretro.self - Neko Project II Kai, NEC PC9801/9821 (High Accuracy)
nxengine_libretro.self - NXEngine, Cave Story/Doukutsu Monogatari Player
pcsx_rearmed_libretro.self - PCSX ReARMed, PlayStation 1
picodrive_libretro.self - PicoDrive, Sega Genesis/Mega Drive [+ Sega CD & Sega 32X]
puae_libretro.self - PUAE, Commodore Amiga A500/1200
pokemini_libretro.self - Pokemon Mini Emulator
prboom_libretro.self - PrBoom, Doom Engine
prosystem_libretro.self - ProSystem, Atari 7800
px68k_libretro.self - px68k, Sharp X68000
quasi88_libretro.self- Quasi88, NEC PC8801
quicknes_libretro.self - QuickNES, Nintendo Entertainment System [NES] (Low Accuracy)
race_libretro.self - RACE, Neo-Geo Pocket [+ Color] (Low Accuracy)
snes9x2002_libretro.self - Snes9X 2002, Super Nintendo [SNES] (Lowest Accuracy)
snes9x2005_libretro.self - Snes9x 2005, Super Nintendo [SNES] (Mid Accuracy)
snes9x2005_plus_libretro.self - Snes9x 2005 Plus, Super Nintendo [SNES] (Mid Accuracy + More Accurate Sound)
snes9x2010_libretro.self - Snes9x 2010, Super Nintendo [SNES] (Highest Accuracy, SLOW!)
stella2014_libretro.self - Stella 2014, Atari 2600 [VCS] (Less Accurate)
stella_libretro.self - Stella, Atari 2600 [VCS] (Most Accurate)
tgbdual_libretro.self - TGB Dual, Game Boy [+ Color] (Supports Link Cable)
tyrquake_libretro.self - TyrQuake, Quake Engine Player
vba_next_libretro.self - VBA Next, Game Boy Advance
vecx_libretro.self - VecX, GCE/MB Vectrex
vice_x64_libretro.self - VICE x64, Commodore 64
yabause_libretro.self - Yabause, Sega Saturn
Current Performance: Thanks for the suggestion, Chesskid1!
Reminder, these are estimations and are not to judge overall performance of each core or RetroArch as a whole. Notable exceptions to each rule will be noted.
Consoles
Atari 2600 (Stella): Fullspeed.
Atari 7800 (ProSystem): Fullspeed.
Genesis/Mega Drive/Master System/Game Gear/CD (Genesis Plus GX): Fullspeed, consistent in both cartridge and Sega CD games. Sega 8-bits platforms run fine as well.
Genesis/Mega Drive/CD/32x (PicoDrive): Fullspeed, consistent in both cartridge and Sega CD games; less overhead than Genesis Plus GX. However, 32X games may run poorly (~40fps).
NES (FCEUmm): Fullspeed, consistent (This IS the NES, after all... (^^;; )
NES (Nestopia): Fullspeed, consistent (This IS the NES, after all... (^^;; )
Neo-Geo CD (NeoCD): Fullspeed in system menus, but inconsistent framerates in-game; expect ~50fps.
PC Engine (MednaFen): Fullspeed, consistent in HuCard and Super CD-ROM2 games.
PlayStation (PCSX Re-ARMed): HEAVILY dependent on game, expect anywhere from 60fps in 2D-based games to 30fps in some 3D-based titles.
SNES (Snes9x 2005): ~55fps - 60fps on standard games, ~50fps on SuperFX-powered games.
SNES (Snes9x 2005+): ~50fps - 60fps on standard games. Frame drops compared to Regular '05 Snes9x are noticeable, however, on select games.
SNES (Snes9x 2010): ~40fps on standard games; recommend using Snes9x 2005 instead.
Sega Saturn (Yabause): Basically nonfunctional, Proof-of-Concept only.
Vectrex: ~50fps, however this is fullspeed for Vectrex.
Computer Systems
MS-DOS (DOSBox): Functional, fairly slow, however; mapping instructions here.
ZX81 (81): ?
PC-9801 (NP2K): Functional, but fairly slow.
ZX Spectrum (Fuse): Full speed.
Handhelds
Atari Lynx (Handy): ~60fps
Game Boy (Gambatte/TGBDual): ~60fps
Game Boy Advance (gpSP): Generally fullspeed... when it works. Many games won't boot (Monkey Ball Jr., Payback), exhibit compatibility issues (Dragon Ball Z games, Golden Sun 2), or will display inaccuracies (Golden Sun games)
Game Boy Advance (VBA Next): ~40-50fps. 2D games will perform better, but anything more demanding (Golden Sun, 3D games) will be slow.
Neo-Geo Pocket (Color) (MednaFen): Fullspeed
Virtual Boy (MednaFen): ~25fps-30fps
WonderSwan (Mednafen): Fullspeed on WonderSwan and Color games alike
Arcade Systems
Final Burn Alpha: Varies by ROMset, generally better performance than MAME however.
CPS1 (Final Burn Alpha): 60fps, consistent.
CPS2 (Final Burn Alpha): 60fps, consistent.
Neo-Geo (Final Burn Alpha): 60fps, consistent.
FB Neo: Varies by ROMset, generally same performance when playing CPS1/2/NG, but others will be slow.
MAME 2000 (0.37b5): Varies by ROMset, generally full speed in most cases; may exhibit different performance from FBA.
MAME 2003 (0.78): Varies by ROMset, generally half-speed, if not slower; recommend using Final Burn Alpha or MAME 2000 (0.37b5) instead.
Engine Ports
2048: Working.
Cave Story (NXEngine): Fullspeed.
DOOM (PrBoom): Fullspeed. However, using "Linear" filtering on anything but fog will drop framerates to half-speed.
Quake (TyrQuake): 40fps-50fps with defaults, adjustable in settings.
Current Bugs:
Global
Rewind/Fast Forward currently cause sporadic performance hitches on Genesis Plus GX (Requires further investigation).
Core Specific
vecx_libretro: Sound pitch is an octave lower than original hardware?
fuse_libretro: Cannot load more than one ROM in a single session (Application Crash). To change/reset a game, a complete reload of the core is necessary (As "Reset" restarts the virtual ZX Spectrum; NOT re-loading the game).
Fixed Issues/Bugs
Please note that these bugs are currently a non-issue or fixed as of the latest Stable/Nightly builds. These remain purely for historical purposes and are not indicative of current state of RetroArch/Libretro cores.
Global
Save/Load-States are nonfunctioning (Files are created but are unable to be loaded).Fixed in August 5th Nightly.
Core Specific
fb_alpha_neo_libretro: High megabit ROMsets crash the program.Fixed in August 5th Nightly.
gambatte_libretro: .gb/.gbc ROMsets unable to load (Kickback to Quick Menu).Fixed in August 5th Nightly.
mednafen_vb_libretro: Half of the screen is rendered in spite of picture format.Fixed in September 12th Nightly.
2048_libretro: Unable to load core (Kickback to Quick Menu).Fixed in September 12th Nightly.
snes9x_next_libretro: Cannot load ROMsets (Application Crash).Fixed in August 5th Nightly.
prboom_libretro: Cannot load WAD file(Kickback to Quick Menu)(Application crashes).Thanks for the report, snk4ever!Fixed in August 15th Nightly.
dosbox_libretro: Unable to load DOS or programs.Fixed in September 12th Nightly.
stella_libretro: Half of the screen is rendered in spite of picture format, colors inverted(?).Fixed in August 8th Nightly.
fbalpha2012_libretro: Application crash on startup. Completely nonfunctioning.Fixed in August 25th Nightly, use fbalpha(non2012ver).
nestopia_libretro: Cannot load ROMsets (Application Crash).Fixed in August 15th Nightly.
tgbdual_libretro: Cannot load ROMsets (Application Crash).Fixed in September 12th Nightly.
gpsp_libretro: Cannot load ROMsets (Kickback to Quick Menu without BIOS, Application Crash with BIOS).Fixed in August 15th Nightly.
mame2000_libretro: Application crash on startup. Completely nonfunctioning.Fixed in August 25th(?) Nightly.
tyrquake_libretro: Cannot load Quake (Crashes loading The Necropolis Demo at line "Using Protocol 15")Fixed in September 17th Nightly.
fuse_libretro: Cannot load ROMsets (Kickback to Quick Menu).Fixed in September 12th(?) Nightly.
In-game saving is sporadic across all cores that support it. Neo-Geo doesn't recognize any virtual Memory Card. Famicom Disk System loses saves(?).Fixed in September 12th(?) Nightly. Thanks for the report, guys!
picodrive_libretro: Cannot load ROMsets (Application Crash).Fixed in September 20th Nightly.
mame2000_libretro: Cannot load ROMsets (Application Crash).Fixed in September 20th Nightly.
mednafen_ngp_libretro: Cannot load more than one ROM in a single session (Application Crash).Fixed in October 12th Nightly.
glui menu driver lacks font assets, currently unusable.Fixed as of 1.6.0 Stable.
Currently, using either the AiO Executable or the individual Core packages may exhibit random occurrences of loss of control over Libretro as a whole. The only known solution is to suspend/resume the application to restore control, however this will not work with any CD/Disc Image-based title as it will cause the game to inevitably freeze.Fixed as of 1.6.0 Stable.
genesis_plus_gx_libretro: SegaCD Redbook audio hangs when suspending/pausing the application. Attempting to load game assets in the same game afterwards soft-locks the game (Virtual CD is ejected?)Thanks for the report, wolven9!Fixed as of 1.8.5 Stable.
Bios Files Required (Place in ux0:data/retroarch/system):
Deprecated; individual core prerequisites can be found on the official documentation (under "For Users -> Core Library -> Console Manufacturer -> Console Name (Core Name)")
DOOM (PrBoom): prboom.wad (PrBoom system file, place in same directory as DOOM .WADs) (Can be obtained here).
Sega Genesis/Mega Drive (Genesis Plus GX/PicoDrive[?]): Sega CD (bios_CD_E.bin, bios_CD_J.bin, bios_CD_U.bin).
NES/Famicom (FCEUmm): DISKSYS.ROM (Famicom Disk System BIOS only).
Neo-Geo (FBA): neogeo.zip (SNK Neo-Geo BIOS, must contain UniBIOS as well, place in same directory as ROMsets).
PC-Engine (MednaFen): syscard3.pce (TG16 CD-ROM System Card ver. 3.00).
PlayStation (PCSX ReARMed): SCPH550X.BIN (PlayStation BIOS). "X" stands for 0, 1, or 2, depending on region
Game Boy Advance (gpSP/VBA Next): gba_bios.bin (Game Boy Advance BIOS).
NEC PC-9801/9821 (Neko Project II Kai): FONT.ROM (PC9801 Font for Neko Project II, needed for Touhou Project titles and others) and YM2608 sample files (Can be obtained here).
Final Burn Alpha/MAME disclaimer: Final Burn Alpha uses a unique ROMset based off of MAME 0.140. MAKE SURE you are using sets marked as compatible with Final Burn Alpha v0.2.97.35 for that core. ONLY USE MAME sets with MAME itself, NOT Final Burn Alpha!
Thread is WIP. If you have any concerns, leave a post or message me.
Credit where credit's due to all the users who have assisted with RetroArch/Libretro, the Vita ports, and everyone who provides unofficial fixes, advice, and assets for use with Vita RetroArch/Libretro. Thank you!
Last edited by Flame,
, Reason: Update.