Difference between revisions of "Libretro"

From Emulation General Wiki
Jump to navigation Jump to search
(Emulation: Automatic Kronos' version update.)
(Spelling part 1)
Line 1: Line 1:
[[File:Libretro.png|thumb|250px]]
+
[[File:Libretro.png|thumb|250px]]{{lowercase title}}
 
'''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''' (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]].
  
Line 6: Line 6:
 
*[[RetroArch]]
 
*[[RetroArch]]
 
*RetroPlayer (XBMC)
 
*RetroPlayer (XBMC)
*ZMZ (SNES cores only)
+
*[[ZSNES#ZMZ|ZMZ]] (SNES cores only)
 
*[http://arcan-fe.com/  Arcan]
 
*[http://arcan-fe.com/  Arcan]
 
*[https://github.com/team-phoenix/Phoenix Phoenix]
 
*[https://github.com/team-phoenix/Phoenix Phoenix]
Line 20: Line 20:
 
! scope="col"|Notes
 
! scope="col"|Notes
 
|-
 
|-
|[[Super Nintendo Emulators|SNES]]
+
|[[Super Nintendo emulators|SNES]]
|[[Higan]]
+
|[[higan]]
 
|0.106
 
|0.106
 
|Separate cores for each profile.  
 
|Separate cores for each profile.  
 
C++98 version is bsnes 0.85 Performance profile.
 
C++98 version is bsnes 0.85 Performance profile.
 
|-
 
|-
|[[Super Nintendo Emulators|SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Higan|bsnes-mercury]]
 
|[[Higan|bsnes-mercury]]
 
|0.94
 
|0.94
 
|Fork of [[Higan|bsnes]] with modifications for speed. Separate cores for each profile
 
|Fork of [[Higan|bsnes]] with modifications for speed. Separate cores for each profile
 
|-
 
|-
|[[SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Mednafen]] bsnes
 
|[[Mednafen]] bsnes
 
|0.9.26
 
|0.9.26
 
|Fork of [[higan|bsnes]] v59 with a few modifications.
 
|Fork of [[higan|bsnes]] v59 with a few modifications.
 
|-
 
|-
|[[Super Nintendo Emulators|SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Higan|nSide Balanced]]
 
|[[Higan|nSide Balanced]]
 
|1.06
 
|1.06
|[https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Fork] of [[Higan]] v106 with additional hardware support. Good for slower computers that cannot run the Accuracy core-only releases from higan v0.98 onwards with full speed.
+
|[https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Fork] of [[higan]] v106 with additional hardware support. Good for slower computers that cannot run the Accuracy core-only releases from higan v0.98 onwards with full speed.
 
|-
 
|-
|[[SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Snes9x]]
 
|[[Snes9x]]
 
|1.54
 
|1.54
 
|Supports libretro in upstream.
 
|Supports libretro in upstream.
 
|-
 
|-
|[[SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Snes9x|Snes9x 2002]] (previously PocketSNES)
 
|[[Snes9x|Snes9x 2002]] (previously PocketSNES)
 
|1.39
 
|1.39
|Snapshot of SNES9x for use on very slow platforms
+
|Snapshot of Snes9x for use on very slow platforms
 
|-
 
|-
|[[Super Nintendo Emulators|SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Snes9x|Snes9x 2005]]
 
|[[Snes9x|Snes9x 2005]]
 
|1.43
 
|1.43
|Snapshot of SNES9x useful for Mario World hacks that have broken custom music.
+
|Snapshot of Snes9x useful for Mario World hacks that have broken custom music.
 
|-
 
|-
|[[Super Nintendo Emulators|SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Snes9x|Snes9x 2005 Plus]]
 
|[[Snes9x|Snes9x 2005 Plus]]
 
|1.43
 
|1.43
 
|Snapshot of [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Snes9x 1.43 plus BLARRG APU].
 
|Snapshot of [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Snes9x 1.43 plus BLARRG APU].
 
|-
 
|-
|[[SNES]]
+
|[[Super Nintendo emulators|SNES]]
 
|[[Snes9x|Snes9x 2010]]
 
|[[Snes9x|Snes9x 2010]]
 
|[https://github.com/libretro/snes9x-next 1.52.4]
 
|[https://github.com/libretro/snes9x-next 1.52.4]
 
|Fork of [[Snes9x]] 1.52 WIP focused on speed.
 
|Fork of [[Snes9x]] 1.52 WIP focused on speed.
 
|-
 
|-
|[[WonderSwan]]
+
|[[WonderSwan emulators|WonderSwan]]
|[[Mednafen]] Cygne
+
|[[Mednafen]] [[Cygne]]
 
|?
 
|?
|Modified fork of Cygne.
+
|Modified fork of [[Cygne]].
 
|-
 
|-
|[[PlayStation]]
+
|[[PlayStation emulators|PlayStation]]
 
|[[Mednafen]] PSX
 
|[[Mednafen]] PSX
 
|0.9.39.2
 
|0.9.39.2
 
|Fork has [https://www.libretro.com/index.php/retroarchlibretro-project-status-update/#more-44789 significant modifications] for [https://www.libretro.com/index.php/mednafenbeetle-psx-pgxp-arrives/ enhancements] as well as [https://www.libretro.com/index.php/introducing-vulkan-psx-renderer-for-beetlemednafen-psx/ Vulkan renderer] support. Sometimes referred to as "Beetle PSX."
 
|Fork has [https://www.libretro.com/index.php/retroarchlibretro-project-status-update/#more-44789 significant modifications] for [https://www.libretro.com/index.php/mednafenbeetle-psx-pgxp-arrives/ enhancements] as well as [https://www.libretro.com/index.php/introducing-vulkan-psx-renderer-for-beetlemednafen-psx/ Vulkan renderer] support. Sometimes referred to as "Beetle PSX."
 
|-
 
|-
|[[PlayStation]]
+
|[[PlayStation emulators|PlayStation]]
 
|[[Mednafen]] PSX HW
 
|[[Mednafen]] PSX HW
 
|Alpha
 
|Alpha
 
|Adds an [https://www.libretro.com/index.php/retroarchlibretro-project-status-update/#more-44789 OpenGL renderer] to Mednafen PSX based on the [https://www.libretro.com/index.php/mednafenbeetle-psx-hw-alpha-version/ 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 [https://www.libretro.com/index.php/retroarchlibretro-project-status-update/#more-44789 OpenGL renderer] to Mednafen PSX based on the [https://www.libretro.com/index.php/mednafenbeetle-psx-hw-alpha-version/ 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.
 
|-
 
|-
|[[PlayStation]]
+
|[[PlayStation emulators|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 PCSX-Reloaded. Supports libretro in upstream.
 
|-
 
|-
|[[PC Engine]] & PCE-CD
+
|[[PC Engine (TurboGrafx-16) emulators|PC Engine]] & PCE-CD
 
|[[Mednafen]] PCE-Fast
 
|[[Mednafen]] PCE-Fast
 
|?
 
|?
 
|
 
|
 
|-
 
|-
|[[PC Engine]] SuperGrafx
+
|[[PC Engine (TurboGrafx-16) emulators|PC Engine]] SuperGrafx
 
|[[Mednafen]] SuperGrafx
 
|[[Mednafen]] SuperGrafx
 
|?
 
|?
 
|
 
|
 
|-
 
|-
|[[PC-FX]]
+
|[[PC-FX emulators|PC-FX]]
 
|[[Mednafen]] PC-FX
 
|[[Mednafen]] PC-FX
 
|?
 
|?
 
|
 
|
 
|-
 
|-
|[[Neo Geo Pocket|Neo-Geo Pocket]]
+
|[[Neo Geo Pocket emulators|Neo-Geo Pocket]]
|[[Mednafen]] NeoPop
+
|[[Mednafen]] [[NeoPop]]
 
|?
 
|?
|Modified fork of NeoPop.
+
|Modified fork of [[NeoPop]].
 
|-
 
|-
|[[Virtual Boy]]
+
|[[Virtual Boy emulators|Virtual Boy]]
 
|[[Mednafen]] VB
 
|[[Mednafen]] VB
 
|?
 
|?
 
|
 
|
 
|-
 
|-
|[[Atari 2600]]
+
|[[Atari 2600 emulators|Atari 2600]]
 
|[[Stella]]
 
|[[Stella]]
 
|3.9.3
 
|3.9.3
 
|
 
|
 
|-
 
|-
|[[Atari 5200]]
+
|[[Atari 5200 emulators|Atari 5200]]
 
|Atari800
 
|Atari800
 
|3.1.0
 
|3.1.0
 
|
 
|
 
|-
 
|-
|[[Atari 7800]]
+
|[[Atari 7800 emulators|Atari 7800]]
 
|ProSystem
 
|ProSystem
 
|1.3e
 
|1.3e
Line 127: Line 127:
 
|-
 
|-
 
|[[Atari Lynx emulators|Atari Lynx]]
 
|[[Atari Lynx emulators|Atari Lynx]]
|Handy
+
|[[Handy]]
 
|[https://github.com/libretro/libretro-handy 0.95]
 
|[https://github.com/libretro/libretro-handy 0.95]
 
|
 
|
Line 134: Line 134:
 
|[[Mednafen]] Lynx
 
|[[Mednafen]] Lynx
 
|?
 
|?
|Modified fork of Handy.
+
|Modified fork of [[Handy]].
 
|-
 
|-
|[[Atari Jaguar]]
+
|[[Atari Jaguar emulators|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|NES]]
+
|[[Nintendo Entertainment System emulators|NES]]
 
|[[Higan|bnes]]
 
|[[Higan|bnes]]
 
|0.83
 
|0.83
 
|
 
|
 
|-
 
|-
|[[Nintendo Entertainment System|NES]]
+
|[[Nintendo Entertainment System emulators|NES]]
 
|FCEUmm
 
|FCEUmm
 
|98.13mm (SVN)
 
|98.13mm (SVN)
 
|
 
|
 
|-
 
|-
|[[Nintendo Entertainment System|NES]]
+
|[[Nintendo Entertainment System emulators|NES]]
 
|QuickNES
 
|QuickNES
 
|1.0
 
|1.0
 
|
 
|
 
|-
 
|-
|[[Nintendo Entertainment System|NES]]
+
|[[Nintendo Entertainment System emulators|NES]]
 
|[[Mesen]]
 
|[[Mesen]]
 
|Git
 
|Git
Line 166: Line 166:
 
|Supports libretro in upstream.
 
|Supports libretro in upstream.
 
|-
 
|-
|[[Game_Boy/Game_Boy_Color|Game Boy/Color]]
+
|[[Game_Boy/Game_Boy_Color emulators|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/Color]]
+
|[[Game_Boy/Game_Boy_Color emulators|Game Boy/Color]]
 
|[[Gearboy]]
 
|[[Gearboy]]
 
|Git
 
|Git
 
|[https://docs.libretro.com/library/gearboy/ Open source, multi-platform, GB (DMG) / GBC (CGB) emulator written in C++].
 
|[https://docs.libretro.com/library/gearboy/ Open source, multi-platform, GB (DMG) / GBC (CGB) emulator written in C++].
 
|-
 
|-
|[[Game_Boy/Game_Boy_Color|Game Boy/Color]]
+
|[[Game_Boy/Game_Boy_Color emulators|Game Boy/Color]]
 
|[[TGB Dual]]
 
|[[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/Game_Boy_Color|Game Boy/Color]]
+
|[[Game_Boy/Game_Boy_Color emulators|Game Boy/Color]]
 
|[[SameBoy]]
 
|[[SameBoy]]
 
|Git
 
|Git
 
|[https://docs.libretro.com/library/sameboy/ Extremely accurate GB (DMG) & GBC (CGB) emulator written in portable C]. [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Latest core update in 2018].
 
|[https://docs.libretro.com/library/sameboy/ Extremely accurate GB (DMG) & GBC (CGB) emulator written in portable C]. [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Latest core update in 2018].
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|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 [[VisualBoy Advance#VBA-M|VBA-M]] focused on speed.
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|Game Boy Advance]]
|[[VisualBoy Advance|VBA-M]]
+
|[[VisualBoy Advance#VBA-M|VBA-M]]
 
|SVN
 
|SVN
 
|Supports libretro in upstream.
 
|Supports libretro in upstream.
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|Game Boy Advance]]
 
|Meteor
 
|Meteor
 
|1.4
 
|1.4
 
|Supports libretro in upstream.
 
|Supports libretro in upstream.
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|Game Boy Advance]]
 
|[[Mednafen]] VBA
 
|[[Mednafen]] VBA
 
|0.9.33.3
 
|0.9.33.3
|Fork of an old version of [[VBA]]
+
|Fork of an old version of [[VisualBoy Advance|VBA]]
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|Game Boy Advance]]
|[[GpSP#TempGBA|TempGBA]]
+
|[[gpSP#TempGBA|TempGBA]]
 
|Git
 
|Git
 
|PSP-only fork of gpSP
 
|PSP-only fork of gpSP
 
|-
 
|-
|[[Game Boy Advance]]
+
|[[Game Boy Advance emulators|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]]
+
|[[Game Boy Advance emulators|Game Boy Advance]], [[Game_Boy/Game_Boy_Color emulators|Game Boy/Color]]
 
|[[mGBA]]
 
|[[mGBA]]
 
|[https://github.com/libretro/mgba 0.5.2]
 
|[https://github.com/libretro/mgba 0.5.2]
 
|
 
|
 
|-
 
|-
|[[Nintendo 64]]
+
|[[Nintendo 64 emulators|Nintendo 64]]
 
|[[Mupen64Plus]]
 
|[[Mupen64Plus]]
 
|2.0-rc2
 
|2.0-rc2
 
|Fork, has significant modifications.
 
|Fork, has significant modifications.
 
|-
 
|-
|[[Nintendo 64]]
+
|[[Nintendo 64 emulators|Nintendo 64]]
|[[paraLLEl]]
+
|paraLLEl
 
|pre-alpha
 
|pre-alpha
 
|New fork/rewrite of the Mupen64Plus core with a [https://www.libretro.com/index.php/nintendo-64-vulkan-low-level-emulator-parallel-pre-alpha-release/ port] of the Angrylion video plugin ([https://www.libretro.com/index.php/parallel-n64-with-multithreaded-angrylion-released/ Multi-threaded version] also exists) to Vulkan for [https://www.libretro.com/index.php/tag/parallel-n64/ massive speed improvements]. Highly accurate on compatible games, extremely broken on incompatible games.
 
|New fork/rewrite of the Mupen64Plus core with a [https://www.libretro.com/index.php/nintendo-64-vulkan-low-level-emulator-parallel-pre-alpha-release/ port] of the Angrylion video plugin ([https://www.libretro.com/index.php/parallel-n64-with-multithreaded-angrylion-released/ Multi-threaded version] also exists) to Vulkan for [https://www.libretro.com/index.php/tag/parallel-n64/ massive speed improvements]. Highly accurate on compatible games, extremely broken on incompatible games.
 
|-
 
|-
|Sega Systems ([[Master System|Master]], [[Genesis]], [[Genesis|Sega CD]], [[Game Gear]])
+
|Sega Systems ([[Master System emulators|Master]], [[Sega Genesis emulators|Genesis]], [[Sega Genesis emulators|Sega CD]], [[Master System emulators|Game Gear]])
 
|[[Genesis Plus GX]]
 
|[[Genesis Plus GX]]
 
|[https://github.com/libretro/Genesis-Plus-GX 1.7.4]
 
|[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|Master]], [[Genesis]], [[Genesis|Sega CD]], 32X)
+
|Sega Systems ([[Master System emulators|Master]], [[Sega Genesis emulators|Genesis]], [[Sega Genesis emulators|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]]
+
|[[Sega Saturn emulators|Sega Saturn]]
 
|[[Mednafen]] Saturn
 
|[[Mednafen]] Saturn
 
|?
 
|?
 
|Sometimes referred to as "Beetle Saturn"
 
|Sometimes referred to as "Beetle Saturn"
 
|-
 
|-
|[[Sega Saturn]]
+
|[[Sega Saturn emulators|Sega Saturn]]
 
|[[Yabause]]
 
|[[Yabause]]
 
|0.9.13
 
|0.9.13
 
|Lacks dynarec and GL renderer. Heavily outdated.
 
|Lacks dynarec and GL renderer. Heavily outdated.
 
|-
 
|-
|[[Sega Saturn]]
+
|[[Sega Saturn emulators|Sega Saturn]]
 
|[[Yabause|Kronos]]
 
|[[Yabause|Kronos]]
 
|{{KronosVer}}
 
|{{KronosVer}}
 
|2nd-degree Yabause fork. Has [https://www.patreon.com/posts/new-sega-saturn-22300379 OpenGL ES 3.0 (for mobile) / 3.1 rendering & cached interpreter CPU core (Faster than Yabause's core). Supports ST-V arcade.]
 
|2nd-degree Yabause fork. Has [https://www.patreon.com/posts/new-sega-saturn-22300379 OpenGL ES 3.0 (for mobile) / 3.1 rendering & cached interpreter CPU core (Faster than Yabause's core). Supports ST-V arcade.]
 
|-
 
|-
|[[Arcade]]
+
|[[Arcade emulators|Arcade]]
 
|[[Final Burn Alpha]]
 
|[[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]]
+
|[[Arcade emulators|Arcade]]
 
|[[Final Burn Alpha]]
 
|[[Final Burn Alpha]]
 
|0.2.97.38
 
|0.2.97.38
 
|
 
|
 
|-
 
|-
|[[Arcade]]
+
|[[Arcade emulators|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]]
+
|[[Arcade emulators|Arcade]]
 
|[[MAME]] 2003
 
|[[MAME]] 2003
 
|0.78
 
|0.78
 
|Old version for use on slow platforms. [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Core updated in 2018].
 
|Old version for use on slow platforms. [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Core updated in 2018].
 
|-
 
|-
|[[Arcade]]
+
|[[Arcade emulators|Arcade]]
 
|[[MAME]] 2003 Plus
 
|[[MAME]] 2003 Plus
 
|0.78
 
|0.78
 
|[https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Updated 2018 version of MAME (0.78)] for libretro, with added game support and improvements.
 
|[https://www.patreon.com/posts/lakka-2-1-1-with-20727887 Updated 2018 version of MAME (0.78)] for libretro, with added game support and improvements.
 
|-
 
|-
|[[Arcade]]
+
|[[Arcade emulators|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]]
+
|[[Arcade emulators|Arcade]]
 
|[[MAME]] 2014
 
|[[MAME]] 2014
 
|0.159
 
|0.159
Line 306: Line 306:
 
|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]]
+
|[[Nintendo DS emulators|Nintendo DS]]
 
|[[DeSmuME]] 2015
 
|[[DeSmuME]] 2015
 
|SVN
 
|SVN
|[https://docs.libretro.com/library/desmume_2015/ Based on Desmume 2015 SVN]. Has options for single-screen fullscreen with swapping.
+
|[https://docs.libretro.com/library/desmume_2015/ Based on DeSmuME 2015 SVN]. Has options for single-screen fullscreen with swapping.
 
|-
 
|-
|[[Nintendo DS]]
+
|[[Nintendo DS emulators|Nintendo DS]]
 
|[[DeSmuME]] (New)
 
|[[DeSmuME]] (New)
 
|Git
 
|Git
 
|Has options for single-screen fullscreen with swapping. [https://docs.libretro.com/library/desmume/ Latest core] [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 update in 2018].
 
|Has options for single-screen fullscreen with swapping. [https://docs.libretro.com/library/desmume/ Latest core] [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 update in 2018].
 
|-
 
|-
|[[Nintendo DS]]
+
|[[Nintendo DS emulators|Nintendo DS]]
 
|[[melonDS]]
 
|[[melonDS]]
 
|Git
 
|Git
Line 326: Line 326:
 
|Has an [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 updated 2018 core].
 
|Has an [https://www.patreon.com/posts/lakka-2-1-1-with-20727887 updated 2018 core].
 
|-
 
|-
|[[PlayStation Portable|PSP]]
+
|[[PlayStation Portable emulators|PSP]]
 
|[[PPSSPP]]
 
|[[PPSSPP]]
 
|Git
 
|Git
 
|2018: Now has working [https://www.youtube.com/watch?v=9zCeqRyT_P8 Vulkan, OpenGL] & [https://www.libretro.com/index.php/libretro-api-now-supports-experimental-direct3d11-hardware-rendering/ Direct3D 11] renderers. 1st core to use D3D 11.
 
|2018: Now has working [https://www.youtube.com/watch?v=9zCeqRyT_P8 Vulkan, OpenGL] & [https://www.libretro.com/index.php/libretro-api-now-supports-experimental-direct3d11-hardware-rendering/ Direct3D 11] renderers. 1st core to use D3D 11.
 
|-
 
|-
|[[DOS]]
+
|[[86/286/386/486/Pentium|DOS]]
 
|[[DOSBox]]
 
|[[DOSBox]]
 
|SVN
 
|SVN
Line 341: Line 341:
 
|[https://github.com/libretro/vice-libretro WIP].
 
|[https://github.com/libretro/vice-libretro WIP].
 
|-
 
|-
|[[Amiga]]
+
|[[Amiga emulators|Amiga]]
 
|PUAE
 
|PUAE
 
|2.8.0
 
|2.8.0
 
|[https://github.com/libretro/PUAE Very old, shallow fork]; based on WinUAE.
 
|[https://github.com/libretro/PUAE Very old, shallow fork]; based on WinUAE.
 
|-
 
|-
|[[Amiga]]
+
|[[Amiga emulators|Amiga]]
 
|libretro-fsuae
 
|libretro-fsuae
 
|Git
 
|Git
 
|[https://github.com/libretro/libretro-fsuae Cross-platform Amiga emulator]; newer than old PUAE core. Based on FS-UAE 2.8.1u5.
 
|[https://github.com/libretro/libretro-fsuae Cross-platform Amiga emulator]; newer than old PUAE core. Based on FS-UAE 2.8.1u5.
 
|-
 
|-
|[[Atari ST]]/STE/TT/Falcon
+
|[[Atari ST emulators|Atari ST]]/STE/TT/Falcon
|Hatari
+
|[[Hatari]]
 
|1.7
 
|1.7
 
|
 
|
 
|-
 
|-
|[[MSX]]/SVI/Colecovision/SG-1000
+
|[[MSX emulators|MSX]]/SVI/ColecoVision/SG-1000
 
|blueMSX
 
|blueMSX
 
|2.8.2 (SVN)
 
|2.8.2 (SVN)

Revision as of 13:15, 19 November 2018

Libretro.png

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

Cores

Emulation

System Core Version Notes
SNES higan 0.106 Separate cores for each profile.

C++98 version is bsnes 0.85 Performance profile.

SNES bsnes-mercury 0.94 Fork of bsnes with modifications for speed. Separate cores for each profile
SNES Mednafen bsnes 0.9.26 Fork of bsnes v59 with a few modifications.
SNES nSide Balanced 1.06 Fork of higan v106 with additional hardware support. Good for slower computers that cannot run the Accuracy core-only releases from higan v0.98 onwards with full speed.
SNES Snes9x 1.54 Supports libretro in upstream.
SNES Snes9x 2002 (previously PocketSNES) 1.39 Snapshot of Snes9x for use on very slow platforms
SNES Snes9x 2005 1.43 Snapshot of Snes9x useful for Mario World hacks that have broken custom music.
SNES Snes9x 2005 Plus 1.43 Snapshot of Snes9x 1.43 plus BLARRG APU.
SNES Snes9x 2010 1.52.4 Fork of Snes9x 1.52 WIP focused on speed.
WonderSwan Mednafen Cygne ? Modified fork of Cygne.
PlayStation Mednafen PSX 0.9.39.2 Fork has significant modifications for enhancements as well as Vulkan renderer support. Sometimes referred to as "Beetle PSX."
PlayStation Mednafen PSX HW 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.
PlayStation PCSX-ReARMed r22 ARM optimized fork of PCSX-Reloaded. Supports libretro in upstream.
PC Engine & PCE-CD Mednafen PCE-Fast ?
PC Engine SuperGrafx Mednafen SuperGrafx ?
PC-FX Mednafen PC-FX ?
Neo-Geo Pocket Mednafen NeoPop ? Modified fork of NeoPop.
Virtual Boy Mednafen VB ?
Atari 2600 Stella 3.9.3
Atari 5200 Atari800 3.1.0
Atari 7800 ProSystem 1.3e
Atari Lynx Handy 0.95
Atari Lynx Mednafen Lynx ? Modified fork of Handy.
Atari Jaguar Virtual Jaguar 2.1.0 Very low FPS.
NES bnes 0.83
NES FCEUmm 98.13mm (SVN)
NES QuickNES 1.0
NES Mesen Git Supports libretro in upstream.
NES Nestopia 1.46-WIP Supports libretro in upstream.
Game Boy/Color Gambatte 0.5.0 Has an option to disable color correction.
Game Boy/Color Gearboy Git Open source, multi-platform, GB (DMG) / GBC (CGB) emulator written in C++.
Game Boy/Color TGB Dual 0.8.3 Has a split-screen mode for game linking.
Game Boy/Color SameBoy Git Extremely accurate GB (DMG) & GBC (CGB) emulator written in portable C. Latest core update in 2018.
Game Boy Advance VBA-Next 1.0.2 Fork of VBA-M focused on speed.
Game Boy Advance VBA-M SVN Supports libretro in upstream.
Game Boy Advance Meteor 1.4 Supports libretro in upstream.
Game Boy Advance Mednafen VBA 0.9.33.3 Fork of an old version of VBA
Game Boy Advance TempGBA Git PSP-only fork of gpSP
Game Boy Advance gpSP 0.91 Dynarec available for ARM
Game Boy Advance, Game Boy/Color mGBA 0.5.2
Nintendo 64 Mupen64Plus 2.0-rc2 Fork, has significant modifications.
Nintendo 64 paraLLEl pre-alpha New fork/rewrite of the Mupen64Plus core with a port of the Angrylion video plugin (Multi-threaded version also exists) to Vulkan for massive speed improvements. Highly accurate on compatible games, extremely broken on incompatible games.
Sega Systems (Master, Genesis, Sega CD, Game Gear) Genesis Plus GX 1.7.4 Exclusive to libretro on non-GC/Wii platforms. Supports libretro in upstream.
Sega Systems (Master, Genesis, Sega CD, 32X) PicoDrive 1.81 Exclusive to libretro on PC platforms. Supports libretro in upstream.
Sega Saturn Mednafen Saturn ? Sometimes referred to as "Beetle Saturn"
Sega Saturn Yabause 0.9.13 Lacks dynarec and GL renderer. Heavily outdated.
Sega Saturn Kronos 2.6.1 2nd-degree Yabause fork. Has OpenGL ES 3.0 (for mobile) / 3.1 rendering & cached interpreter CPU core (Faster than Yabause's core). Supports ST-V arcade.
Arcade Final Burn Alpha 0.2.97.24 Older version for use on slower platforms.
Arcade Final Burn Alpha 0.2.97.38
Arcade MAME 2000 0.37b5 Old version for use on very slow platforms.
Arcade MAME 2003 0.78 Old version for use on slow platforms. Core updated in 2018.
Arcade MAME 2003 Plus 0.78 Updated 2018 version of MAME (0.78) for libretro, with added game support and improvements.
Arcade MAME 2010 0.139 Old but more recent version for mobile devices.
Arcade MAME 2014 0.159 Very recent version for PC and other fast devices.
Arcade (LaserDisc) Daphne Git WIP. Arcade LaserDisc emulator adapted to a libretro core.
Arcade (Sega Model 3) Supermodel Git WIP. Sega Model 3 arcade emulator. OpenGL-only core for now.
Everything MAME 0.188 (Git) Based on bleeding edge Git. Official merge of MESS into MAME codebase.
Nintendo DS DeSmuME 2015 SVN Based on DeSmuME 2015 SVN. Has options for single-screen fullscreen with swapping.
Nintendo DS DeSmuME (New) Git Has options for single-screen fullscreen with swapping. Latest core update in 2018.
Nintendo DS melonDS Git WIP. Different emulator that aims to be more accurate than DeSmuME.
Nintendo 3DS Citra Git Has an updated 2018 core.
PSP PPSSPP Git 2018: Now has working Vulkan, OpenGL & Direct3D 11 renderers. 1st core to use D3D 11.
DOS DOSBox SVN
C64 vice-libretro 3.0 WIP.
Amiga PUAE 2.8.0 Very old, shallow fork; based on WinUAE.
Amiga libretro-fsuae Git Cross-platform Amiga emulator; newer than old PUAE core. Based on FS-UAE 2.8.1u5.
Atari ST/STE/TT/Falcon Hatari 1.7
MSX/SVI/ColecoVision/SG-1000 blueMSX 2.8.2 (SVN)
MSX fMSX 3.9
3DO 4DO 1.3.2.3 Also runs 3DO Arcade games.
Vectrex vecx SVN
Odyssey2/VideoPac O2EM 1.18
ZX Spectrum Fuse 1.11
Nintendo GameCube Dolphin Git 2018: Now has working Direct3D 11, OpenGL & Vulkan renderers. 2nd core to use D3D 11 after PPSSPP's core.
Nintendo GameCube Dolphin (Ishiiruka builds) Git WIP. Based on a custom build version of Dolphin. OpenGL renderer works, Direct3D 11 & Vulkan renderers coming soon. Can have better frame pacing/performance than the Dolphin libretro core.
Wii Dolphin Git 2018: Now has working Direct3D 11, OpenGL & Vulkan renderers. 2nd core to use D3D 11 after PPSSPP's core.
Wii Dolphin (Ishiiruka builds) Git WIP. Based on a custom build version of Dolphin. OpenGL renderer works, Direct3D 11 & Vulkan renderers coming soon. Can have better frame pacing/performance than the Dolphin libretro core.
Game & Watch gw-libretro Git This emulator is actually a simulator of Game & Watch systems. This core has code from MADrigal.
Amstrad CPC Cap32 Git WIP
Sega Dreamcast Reicast regular 0.1 WIP. Builds available for x86 & x64 platforms. Reicast regular has lower accuracy than OIT's core and suits mainly mobile devices.
Sega Dreamcast Reicast OIT 0.1 WIP. Builds available for x86 & x64 platforms. Reicast OIT (PC platforms only) backported the new graphics renderer from a Reicast emulator fork.
ZX81 (for now) EightyOne Git WIP
Mattel Intellivision FreeIntv Git WIP. Mattel Intellivision emulator. Designed for SNES era and later joypads.
Sharp X68000 px68k-libretro Git Portable SHARP X68000 Emulator for PSP, Android and other platforms.
Thomson TO8/TO8D Theodore Git Libretro core for Thomson TO8/TO8D emulation, based on Daniel Coulom's DCTO8D emulator.

Game Engine

Game Core Version Notes
Cave Story NXEngine 1.0.0.4
ChaiLove libretro-chailove 0.20.0 Open-source framework for making 2D games in C++ with ChaiScript (eg. Floppy Bird).
Doom PrBoom 2.5.0
Flashback REminiscence Git Port of the game engine recreation of the spiritual successor to Another World/Out of this World.
Lua Engine (Lutro) libretro-lutro v1 WIP. Experimental lua game framework that follows the LÖVE API. Sample games include Snake, Tetris and Pong.
LucasArt Game Engines ScummVM 1.6.0 Requires loading games inside its own GUI, does not load games from RetroArch's Load Content option.
Quake TyrQuake 0.61
Rick Dangerous xrick-libretro 1.0.0.6 Open-source implementation of the game Rick Dangerous. Core based on BigOrno's work.
RPG Maker 2000/2003 EasyRPG 0.4.1
Tomb Raider #1-5 OpenLara 2017-04-24 WIP. Available for 32bit/64bit Windows & Linux. Has many enhancements over the original games.

Standalone Game

Game Genre
Dinothawr Puzzle

Other

Core Description
FFmpeg Media Player
Modelviewer 3D Tech Demo
SceneWalker 3D Tech Demo
Imageviewer Image Viewer

External Links