Editing Libretro
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | + | [[File:Libretro.png|thumb|250px]] | |
− | + | '''libretro''' (formerly '''libsnes''') is an API designed mainly for games and emulators. It allows games and emulators to be compiled as dynamically linked libraries known as "libretro cores", which can be used in a frontend that implements libretro, such as [[RetroArch]]. | |
− | | | ||
− | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Libretro Frontends== | |
+ | *[[RetroArch]] | ||
+ | *RetroPlayer (XBMC) | ||
+ | *ZMZ (SNES cores only) | ||
+ | *[http://arcan-fe.com/ Arcan] | ||
+ | *[https://github.com/team-phoenix/Phoenix Phoenix] | ||
+ | *[https://github.com/Alcaro/minir Minir] | ||
+ | *[[BizHawk]] (1.11.4 and later only) | ||
==Cores== | ==Cores== | ||
===Emulation=== | ===Emulation=== | ||
− | {| class="wikitable | + | {| class="wikitable" |
! scope="col"|System | ! scope="col"|System | ||
! scope="col"|Core | ! scope="col"|Core | ||
! scope="col"|Version | ! scope="col"|Version | ||
− | |||
! scope="col"|Notes | ! scope="col"|Notes | ||
|- | |- | ||
− | |[[Super Nintendo | + | |[[Super Nintendo Emulators|SNES]] |
− | |[[ | + | |[[Higan|bsnes]] |
− | + | |0.105 | |
− | | | ||
|Separate cores for each profile. | |Separate cores for each profile. | ||
− | C++98 version is bsnes | + | C++98 version is bsnes 0.85 Performance profile. |
|- | |- | ||
− | |[[Super Nintendo | + | |[[Super Nintendo Emulators|SNES]] |
− | |[[ | + | |[[Higan|bsnes-mercury]] |
− | | | + | |0.94 |
− | + | |Fork of [[Higan|bsnes]] with modifications for speed. Separate cores for each profile | |
− | |Fork of [[ | ||
|- | |- | ||
− | |[[ | + | |[[SNES]] |
|[[Mednafen]] bsnes | |[[Mednafen]] bsnes | ||
|0.9.26 | |0.9.26 | ||
− | + | |Fork of [[higan|bsnes]] v59 with a few modifications. | |
− | |Fork of [[higan|bsnes]] | ||
|- | |- | ||
− | |[[ | + | |[[SNES]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[Snes9x]] | |[[Snes9x]] | ||
− | | | + | |1.54 |
− | |||
|Supports libretro in upstream. | |Supports libretro in upstream. | ||
|- | |- | ||
− | |[[ | + | |[[SNES]] |
− | + | |Snes9x 2010 | |
− | |1. | + | |[https://github.com/libretro/snes9x-next 1.52.4] |
− | | | + | |Fork of [[Snes9x]] 1.52 WIP focused on speed. |
− | |||
|- | |- | ||
− | |[[Super Nintendo | + | |[[Super Nintendo Emulators|SNES]] |
− | | | + | |SNES9x 2005 |
|1.43 | |1.43 | ||
− | + | |Snapshot of SNES9x useful for Mario World hacks that have broken custom music | |
− | |Snapshot of | ||
|- | |- | ||
− | |[[ | + | |[[SNES]] |
− | | | + | |SNES9x 2002 (previously PocketSNES) |
− | |1. | + | |1.39 |
− | + | |Snapshot of SNES9x for use on very slow platforms | |
− | |Snapshot of | ||
|- | |- | ||
− | |[[ | + | |[[WonderSwan]] |
− | + | |[[Mednafen]] Cygne | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |[[Mednafen]] | ||
|? | |? | ||
− | + | |Modified fork of Cygne. | |
− | |Modified fork of | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | |[[ | + | |[[PlayStation]] |
|[[Mednafen]] PSX | |[[Mednafen]] PSX | ||
|0.9.39.2 | |0.9.39.2 | ||
− | + | |Fork, has significant modifications for enhancements. Sometimes referred to as "Beetle PSX." | |
− | |Fork has | ||
|- | |- | ||
− | |[[ | + | |[[PlayStation]] |
|[[Mednafen]] PSX HW | |[[Mednafen]] PSX HW | ||
|Alpha | |Alpha | ||
− | + | |Adds an OpenGL renderer to Mednafen PSX based on the GPU renderer from Rustation. Sometimes referred to as "Beetle PSX HW." Still contains the software rendering mode as an option, so this core can effectively replace the "Mednafen PSX" core listed above. | |
− | |Adds an | ||
|- | |- | ||
− | |[[ | + | |[[PlayStation]] |
|PCSX-ReARMed | |PCSX-ReARMed | ||
|[https://github.com/libretro/pcsx_rearmed r22] | |[https://github.com/libretro/pcsx_rearmed r22] | ||
− | + | |ARM optimized fork of PCSX-Reloaded. Supports libretro in upstream. | |
− | |ARM optimized fork of | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | |[[ | + | |[[PC Engine]] & PCE-CD |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[Mednafen]] PCE-Fast | |[[Mednafen]] PCE-Fast | ||
|? | |? | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[PC Engine]] SuperGrafx |
|[[Mednafen]] SuperGrafx | |[[Mednafen]] SuperGrafx | ||
|? | |? | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[PC-FX]] |
|[[Mednafen]] PC-FX | |[[Mednafen]] PC-FX | ||
|? | |? | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[Neo Geo Pocket | + | |[[Neo Geo Pocket|Neo-Geo Pocket]] |
− | |[[Mednafen]] | + | |[[Mednafen]] NeoPop |
|? | |? | ||
− | + | |Modified fork of NeoPop. | |
− | |Modified fork of | ||
|- | |- | ||
− | |[[ | + | |[[Virtual Boy]] |
|[[Mednafen]] VB | |[[Mednafen]] VB | ||
|? | |? | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[Atari 2600]] |
|[[Stella]] | |[[Stella]] | ||
|3.9.3 | |3.9.3 | ||
− | |||
| | | | ||
|- | |- | ||
− | + | |[[Atari 7800]] | |
− | + | |ProSystem | |
− | |||
− | |||
− | |||
− | |||
− | |[[ | ||
− | | | ||
|1.3e | |1.3e | ||
− | |||
| | | | ||
|- | |- | ||
|[[Atari Lynx emulators|Atari Lynx]] | |[[Atari Lynx emulators|Atari Lynx]] | ||
− | | | + | |Handy |
|[https://github.com/libretro/libretro-handy 0.95] | |[https://github.com/libretro/libretro-handy 0.95] | ||
− | |||
| | | | ||
|- | |- | ||
|[[Atari Lynx emulators|Atari Lynx]] | |[[Atari Lynx emulators|Atari Lynx]] | ||
− | |[[Mednafen]] | + | |[[Mednafen]] Lynx |
|? | |? | ||
− | + | |Modified fork of Handy. | |
− | |Modified fork of | ||
|- | |- | ||
− | |[[ | + | |[[Atari Jaguar]] |
|Virtual Jaguar | |Virtual Jaguar | ||
|[https://github.com/libretro/virtualjaguar-libretro 2.1.0] | |[https://github.com/libretro/virtualjaguar-libretro 2.1.0] | ||
− | |||
|Very low FPS. | |Very low FPS. | ||
|- | |- | ||
− | |[[Nintendo Entertainment System | + | |[[Nintendo Entertainment System|NES]] |
− | |[[ | + | |[[Higan|bnes]] |
− | | | + | |0.83 |
− | |||
| | | | ||
|- | |- | ||
− | |[[Nintendo Entertainment System | + | |[[Nintendo Entertainment System|NES]] |
|FCEUmm | |FCEUmm | ||
|98.13mm (SVN) | |98.13mm (SVN) | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[Nintendo Entertainment System | + | |[[Nintendo Entertainment System|NES]] |
− | | | + | |QuickNES |
|1.0 | |1.0 | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[Nintendo Entertainment System | + | |[[Nintendo Entertainment System|NES]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[Nestopia]] | |[[Nestopia]] | ||
|[https://github.com/libretro/nestopia 1.46-WIP] | |[https://github.com/libretro/nestopia 1.46-WIP] | ||
− | |||
|Supports libretro in upstream. | |Supports libretro in upstream. | ||
|- | |- | ||
− | |[[Game_Boy/Game_Boy_Color | + | |[[Game_Boy/Game_Boy_Color|Game Boy/Color]] |
|[[Gambatte]] | |[[Gambatte]] | ||
|0.5.0 | |0.5.0 | ||
− | + | |Has an option to disable color correction | |
− | |Has an option to disable color correction | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
− | |[[Game_Boy/Game_Boy_Color | + | |[[Game_Boy/Game_Boy_Color|Game Boy/Color]] |
− | | | + | |TGB-Dual |
|0.8.3 | |0.8.3 | ||
− | |||
|Has a split-screen mode for game linking. | |Has a split-screen mode for game linking. | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[VisualBoy Advance|VBA-Next]] | |[[VisualBoy Advance|VBA-Next]] | ||
|1.0.2 | |1.0.2 | ||
− | + | |Fork of [[VBA-M]] focused on speed. | |
− | |Fork of [[ | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
− | |[[VisualBoy Advance | + | |[[VisualBoy Advance|VBA-M]] |
|SVN | |SVN | ||
− | |||
|Supports libretro in upstream. | |Supports libretro in upstream. | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
|Meteor | |Meteor | ||
|1.4 | |1.4 | ||
− | |||
|Supports libretro in upstream. | |Supports libretro in upstream. | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
− | |[[Mednafen]] | + | |[[Mednafen]] VBA |
|0.9.33.3 | |0.9.33.3 | ||
− | + | |Fork of an old version of [[VBA]] | |
− | |Fork of an old version of [[ | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
− | | | + | |TempGBA |
|Git | |Git | ||
− | + | |PSP-only fork of gpSP | |
− | |PSP-only fork of | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]] |
− | |[[gpSP]] | + | |[[GpSP|gpSP]] |
|0.91 | |0.91 | ||
− | + | |Dynarec available for ARM | |
− | |Dynarec available for ARM | ||
|- | |- | ||
− | |[[ | + | |[[Game Boy Advance]], [[Game_Boy/Game_Boy_Color|Game Boy/Color]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[mGBA]] | |[[mGBA]] | ||
− | |[https://github.com/libretro/mgba 0. | + | |[https://github.com/libretro/mgba 0.5.2] |
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[Nintendo 64]] |
|[[Mupen64Plus]] | |[[Mupen64Plus]] | ||
|2.0-rc2 | |2.0-rc2 | ||
− | |||
|Fork, has significant modifications. | |Fork, has significant modifications. | ||
|- | |- | ||
− | |[[ | + | |[[Nintendo 64]] |
− | |paraLLEl | + | |[[paraLLEl]] |
|pre-alpha | |pre-alpha | ||
− | + | |New fork/rewrite of the Mupen64Plus core with a port of the Angrylion video plugin to Vulkan for massive speed improvements. Highly accurate on compatible games, extremely broken on incompatible games. | |
− | |New fork/rewrite of the Mupen64Plus core with a | ||
|- | |- | ||
− | |Sega Systems ( | + | |Sega Systems ([[Master System|Master]], [[Genesis]], [[Genesis|Sega CD]], [[Game Gear]]) |
|[[Genesis Plus GX]] | |[[Genesis Plus GX]] | ||
− | |[https://github.com/libretro/Genesis-Plus-GX | + | |[https://github.com/libretro/Genesis-Plus-GX 1.7.4] |
− | |||
|Exclusive to libretro on non-GC/Wii platforms. Supports libretro in upstream. | |Exclusive to libretro on non-GC/Wii platforms. Supports libretro in upstream. | ||
|- | |- | ||
− | |Sega Systems ([[Master System | + | |Sega Systems ([[Master System|Master]], [[Genesis]], [[Genesis|Sega CD]], 32X) |
|[[PicoDrive]] | |[[PicoDrive]] | ||
|1.81 | |1.81 | ||
− | |||
|Exclusive to libretro on PC platforms. Supports libretro in upstream. | |Exclusive to libretro on PC platforms. Supports libretro in upstream. | ||
|- | |- | ||
− | |[[ | + | |[[Sega Saturn]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[Mednafen]] Saturn | |[[Mednafen]] Saturn | ||
|? | |? | ||
− | |||
|Sometimes referred to as "Beetle Saturn" | |Sometimes referred to as "Beetle Saturn" | ||
|- | |- | ||
− | |[[ | + | |[[Sega Saturn]] |
|[[Yabause]] | |[[Yabause]] | ||
|0.9.13 | |0.9.13 | ||
− | |||
|Lacks dynarec and GL renderer. Heavily outdated. | |Lacks dynarec and GL renderer. Heavily outdated. | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
− | + | |[[Final Burn Alpha]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |[[ | ||
|0.2.97.24 | |0.2.97.24 | ||
− | + | |Older version for use on slower platforms | |
− | |Older version for use on slower platforms | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
− | |[[ | + | |[[Final Burn Alpha]] |
|0.2.97.38 | |0.2.97.38 | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
|[[MAME]] 2000 | |[[MAME]] 2000 | ||
|0.37b5 | |0.37b5 | ||
− | |||
|Old version for use on very slow platforms. | |Old version for use on very slow platforms. | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
|[[MAME]] 2003 | |[[MAME]] 2003 | ||
|0.78 | |0.78 | ||
− | + | |Old version for use on slow platforms. | |
− | |Old version for use on slow platforms | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|[[MAME]] 2010 | |[[MAME]] 2010 | ||
|0.139 | |0.139 | ||
− | |||
|Old but more recent version for mobile devices. | |Old but more recent version for mobile devices. | ||
|- | |- | ||
− | |[[ | + | |[[Arcade]] |
|[[MAME]] 2014 | |[[MAME]] 2014 | ||
|0.159 | |0.159 | ||
− | |||
|Very recent version for PC and other fast devices. | |Very recent version for PC and other fast devices. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|Everything | |Everything | ||
|[[MAME]] | |[[MAME]] | ||
|{{MAMEVerLibretro}} (Git) | |{{MAMEVerLibretro}} (Git) | ||
− | |||
|Based on bleeding edge Git. Official merge of MESS into MAME codebase. | |Based on bleeding edge Git. Official merge of MESS into MAME codebase. | ||
|- | |- | ||
− | |[[ | + | |[[Nintendo DS]] |
− | |[[DeSmuME]] | + | |[[DeSmuME]] |
|SVN | |SVN | ||
− | | | + | |Has options for single-screen fullscreen with swapping. |
− | |||
|- | |- | ||
− | + | |[[PlayStation Portable|PSP]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |[[PlayStation Portable | ||
|[[PPSSPP]] | |[[PPSSPP]] | ||
|Git | |Git | ||
− | | | + | |WIP (heavily outdated) |
− | |||
|- | |- | ||
− | | | + | |DOS |
|[[DOSBox]] | |[[DOSBox]] | ||
|SVN | |SVN | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[Amiga]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|PUAE | |PUAE | ||
− | |2. | + | |2.6.1 |
− | | | + | | |
− | |||
|- | |- | ||
− | + | |Atari ST/STE/TT/Falcon | |
− | + | |Hatari | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
|1.7 | |1.7 | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[MSX]]/SVI/Colecovision/SG-1000 |
− | | | + | |blueMSX |
|2.8.2 (SVN) | |2.8.2 (SVN) | ||
− | |||
− | |||
|- | |- | ||
− | |[[ | + | |[[MSX]] |
− | | | + | |fMSX |
|3.9 | |3.9 | ||
− | |||
| | | | ||
|- | |- | ||
− | |[[ | + | |[[3DO]] |
− | | | + | |4DO |
− | |1.3.2. | + | |1.3.2.3 |
− | |||
| | | | ||
|- | |- | ||
− | + | |Vectrex | |
− | | | + | |vecx |
|SVN | |SVN | ||
− | |||
| | | | ||
|- | |- | ||
− | | | + | |Odyssey 2/VideoPac |
− | | | + | |O2EM |
|1.18 | |1.18 | ||
− | |||
| | | | ||
|- | |- | ||
− | | | + | |ZX Spectrum |
− | | | + | |Fuse |
|1.11 | |1.11 | ||
− | |||
| | | | ||
|- | |- | ||
− | + | |Nintendo GameCube | |
|[[Dolphin]] | |[[Dolphin]] | ||
|Git | |Git | ||
− | | | + | |WIP, currently non-functioning |
− | |||
|- | |- | ||
− | |[[ | + | |[[Wii]] |
− | |[[Dolphin]] | + | |[[Dolphin]] |
|Git | |Git | ||
− | + | |WIP, currently non-functioning | |
− | |WIP | ||
|- | |- | ||
|[[Game & Watch]] | |[[Game & Watch]] | ||
|gw-libretro | |gw-libretro | ||
|Git | |Git | ||
− | |||
|This emulator is actually a simulator of Game & Watch systems. This core has code from MADrigal. | |This emulator is actually a simulator of Game & Watch systems. This core has code from MADrigal. | ||
|- | |- | ||
− | |[[ | + | |[[Amstrad CPC]] |
|[https://github.com/libretro/libretro-cap32 Cap32] | |[https://github.com/libretro/libretro-cap32 Cap32] | ||
|Git | |Git | ||
− | |||
|WIP | |WIP | ||
|- | |- | ||
− | |[[ | + | |[[Sega Dreamcast]] |
− | |[[ | + | |[[Reicast]] |
− | | | + | |[https://github.com/libretro/reicast-emulator 0.1] |
− | + | |WIP. Currently only builds for x64 platforms. | |
− | | | ||
|- | |- | ||
− | | | + | |ZX81 (for now) |
− | + | |EightyOne | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | ||
|Git | |Git | ||
− | |||
|WIP | |WIP | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
Line 564: | Line 348: | ||
! scope="col"|Notes | ! scope="col"|Notes | ||
|- | |- | ||
− | | | + | |Quake |
− | | | + | |TyrQuake |
− | | | + | |0.61 |
| | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|Doom | |Doom | ||
|PrBoom | |PrBoom | ||
|2.5.0 | |2.5.0 | ||
− | | | + | | |
|- | |- | ||
− | | | + | |Cave Story |
− | | | + | |NXEngine |
− | | | + | |1.0.0.4 |
− | + | | | |
− | | | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|LucasArt Game Engines | |LucasArt Game Engines | ||
|[[ScummVM]] | |[[ScummVM]] | ||
|[https://github.com/libretro/scummvm 1.6.0] | |[https://github.com/libretro/scummvm 1.6.0] | ||
− | |Requires loading games inside | + | |Requires loading games inside it's own GUI, does not load games from RetroArch's Load Content option. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|RPG Maker 2000/2003 | |RPG Maker 2000/2003 | ||
Line 618: | Line 372: | ||
|[https://github.com/libretro/easyrpg-libretro/releases 0.4.1] | |[https://github.com/libretro/easyrpg-libretro/releases 0.4.1] | ||
| | | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
Line 656: | Line 404: | ||
==External Links== | ==External Links== | ||
− | * [http://www.libretro.com/ libretro.com] - Main website of the libretro project. | + | *[http://www.libretro.com/ libretro.com] - Main website of the libretro project. |
− | * [https://github.com/libretro/ libretro | + | *[https://github.com/libretro/ libretro Github organization] - Source code for RetroArch and the various cores maintained by the libretro project. |
− | * [ | + | *[http://wiki.libretro.com/ wiki.libretro.com] - Wiki |
− | * [ | + | *[http://wiki.libretro.com/index.php?title=Category:Compatibility_Lists libretro Core compatibility lists] - System-separated lists documenting emulation issues in the various cores |
− | |||
[[Category:RetroArch]] | [[Category:RetroArch]] |