Game add-ons
Kodi Game | Game add-ons |
Status on ported currently existing game client addons for the new Game API made available in Kodi Game branch.
These pages are maintained by the community, it only goes as far as fair use, and this should not be considered as an endorsement for copyright infringement. The information on this page might also contain errors or be outdated. It might also contain ants, and their antsy antics. * |
Stand-alone game add-ons
Stand-alone games or emulators that does not use the Libretro API.
Here will be a list of existing/ongoing and future/upcoming project for making new stand-alone game add-ons for Kodi:
- Project discussion: "NVIDIA Gamestream in Kodi" http://forum.kodi.tv/showthread.php?tid=220421
- Proposal: NVIDIA GameStream http://forum.kodi.tv/showthread.php?tid=220965
- GitHub repo: https://github.com/kodi-game/game.moonlight
Libretro cores
- Main pages: Libretro and Porting Libretro cores to game add-ons
The Game API in the Kodi Game branch has a Libretro wrapper which is 1:1 compatibility with the libretro API, so all libretro cores are valid game add-ons. Libretro itself is a well defined interface to handle the communication between a frontend (Kodi with RetroPlayer) and an Emulator Core (e.g. nestopia).
Here is a list of Libretro cores, of which most already have been ported into game add-ons for Kodi, at least as an initial port, (you can see the status of each libretro core in the table below):
Libretro core | Platform emulated | Version | License * | Supports VFS | Supports Rewind | Requires GL | Status |
---|---|---|---|---|---|---|---|
2048 | 2048 Game Clone | 1.0.0 | Public Domain | yes | ? | no | done |
3DO (4DO) | 3DO | 1.3.2 | Non-commercial | no | ? | no | done |
SNES / Super Famicom (Beetle bsnes) | Super Nintendo Entertainment System | 0.9.26 | GPLv2 | no | ? | no | done |
Game Boy Advance (Beetle GBA) | Game Boy Advance | 0.9.36 | GPLv2 | no | ? | no | done |
Atari Lynx (Beetle Handy) | Lynx | 0.9.32 | Zlib, GPLv2 | no | ? | no | done |
Neo Geo Pocket/Color (Beetle NeoPop) | Neo Geo Pocket (Color) | 0.9.36 | GPLv2 | no | ? | no | done |
PC Engine/PCE-CD (Beetle PCE FAST) | PC Engine/PCE-CD | 0.9.38 | GPLv2 | no | ? | no | done |
PC-FX (Beetle PC-FX) | PC-FX | 0.9.33 | GPLv2 | no | ? | no | done |
PlayStation (Beetle PSX) | PlayStation | 0.9.44 | GPLv2 | no | ? | no | done |
Sega Saturn (Beetle Saturn) | Saturn | 0.9.48 | GPLv2 | no | ? | no | done |
PC Engine SuperGrafx (Beetle SGX) | PC Engine SuperGrafx | 0.9.38 | GPLv2 | no | ? | no | done |
Virtual Boy (Beetle VB) | Virtual Boy | 0.9.36 | GPLv2 | no | ? | no | done |
WonderSwan/Color (Beetle Cygne) | WonderSwan/Color | 0.9.35 | GPLv2 | no | ? | no | done |
MSX/SVI/ColecoVision/SG-1000 (blueMSX) | MSX/SVI/ColecoVision/SG-1000 | 1.0.0 | GPLv2 | no | ? | no | done |
NES / Famicom (bnes) | Nintendo Entertainment System | 0.83.0 | GPLv3 | yes | ? | no | done |
SNES / Super Famicom (bsnes-mercury Accuracy) | Super Nintendo Entertainment System | 0.94.0 | GPLv3 | yes | ? | no | done |
SNES / Super Famicom (bsnes-mercury Balanced) | Super Nintendo Entertainment System | 0.94.0 | GPLv3 | yes | ? | no | done |
SNES / Super Famicom (bsnes-mercury Performance) | Super Nintendo Entertainment System | 0.94.0 | GPLv3 | yes | ? | no | done |
Amstrad CPC (Caprice32) | CPC | 4.2.0 | GPLv2 | no | ? | no | done |
Nintendo DS (DeSmuME) | Nintendo DS | 1.0.0 | GPLv2 | no | ? | no | done |
Dinothawr | Dinothawr Game Engine | 1.0.0 | Non-commercial | no | ? | no | done |
DOS (DOSBox) | DOS | 0.74.0 | GPLv2 | no | ? | no | done |
Arcade (FB Alpha) | Arcade (various) | 0.2.97 | Non-commercial | no | ? | no | done |
Arcade (FB Alpha 2012) | Arcade (various) | 0.2.97 | Non-commercial | no | ? | no | done |
NES / Famicom (FCEUmm) | Nintendo Entertainment System | 1.0.0 | GPLv2 | yes | ? | no | done |
MSX (fMSX) | MSX | 4.9.0 | Non-commercial | no | ? | no | done |
ZX Spectrum (Fuse) | ZX Spectrum (various) | 1.1.1 | GPLv3 | yes | ? | no | done |
Game Boy / Game Boy Color (Gambatte) | Game Boy/Game Boy Color | 0.5.0 | GPLv2 | yes | ? | no | done |
Sega MS/GG/MD/CD (Genesis Plus GX) | Sega 8/16-bit (Various) | 1.7.4 | Non-commercial | no | ? | no | done |
Handheld Electronic (GW) | Handheld Electronic | 1.6.2 | zlib | yes | ? | no | done |
Atari Lynx (Handy) | Lynx | 0.97.0 | Zlib | no | ? | no | done |
Atari ST/STE/TT/Falcon (Hatari) | Atari ST/STE/TT/Falcon | 1.8.0 | GPLv2 | no | ? | no | done |
Lua Engine (Lutro) | Lutro | 0.0.1 | MIT | no | ? | no | done |
Nintendo DS (melonDS) | Nintendo DS | 0.6.0 | GPLv2 | no | ? | no | done |
Game Boy Advance (Meteor) | Game Boy Advance | 1.4.0 | GPLv3 | yes | ? | no | done |
Game Boy Advance (mGBA) | Game Boy/Game Boy Color/Game Boy Advance | 0.6.1 | MPLv2.0 | yes | ? | no | done |
Mr.Boom (Bomberman) | Mr.Boom | 4.1.0 | yes | ? | no | done | |
Nintendo 64 (Mupen64Plus) | Nintendo 64 | 2.5.0 | GPLv2 | yes | ? | yes | done |
NES / Famicom (Nestopia UE) | Nintendo Entertainment System | 1.49.0 | GPLv2 | yes | ? | no | done |
Cave Story (NXEngine) | Cave Story Game Engine | 1.0.0 | GPLv3 | no | ? | no | done |
Odyssey2 / Videopac+ (O2EM) | Magnavox Odyssey2 / Phillips Videopac+ | 1.18.0 | Artistic License | no | ? | no | done |
PC (PCem) | PC | 12.0.0 | GPLv2 | yes | ? | no | done |
PlayStation (PCSX ReARMed) | PlayStation | 22.0.0 | GPLv2 | no | ? | no | done |
Sega MS/MD/CD/32X (PicoDrive) | Sega 8/16-bit + 32X (Various) | 1.92.0 | MAME | no | ? | no | done |
Pokémon Mini (PokeMini) | Pokémon Mini | 0.60.0 | GPLv3 | yes | ? | no | done |
Doom (PrBoom) | DOOM Game Engine | 2.5.0 | GPLv2 | no | ? | no | done |
Atari 7800 (ProSystem) | Atari 7800 | 1.3.0 | GPLv2 | yes | ? | no | done |
NES / Famicom (QuickNES) | Nintendo Entertainment System | 1.0.0 | LGPLv2.1+ | yes | ? | no | done |
Sega Dreamcast (Reicast) | Sega Dreamcast | 0.1.0 | GPLv2 | no | ? | yes | done |
Game Boy / Game Boy Color (SameBoy) | Game Boy/Game Boy Color | 0.9.0 | MIT | no | ? | no | done |
ScummVM | Game engine | 2.0.0 | GPLv2 | no | ? | no | done |
SNES / Super Famicom (Snes9x) | Super Nintendo Entertainment System | 1.54.1 | Non-commercial | yes | ? | no | done |
SNES / Super Famicom (Snes9x 2002) | Super Nintendo Entertainment System | 7.2.0 | Non-commercial | yes | ? | no | done |
SNES / Super Famicom (Snes9x 2010) | Super Nintendo Entertainment System | 1.52.4 | Non-commercial | yes | ? | no | done |
Atari 2600 (Stella) | Atari 2600 | 3.9.3 | GPLv2 | yes | ? | no | done |
Game Boy / Game Boy Color (TGB Dual) | Game Boy/Game Boy Color | 0.8.3 | GPLv2 | yes | ? | no | done |
Quake 1 (TyrQuake) | Quake Game Engine | 0.62.0 | GPLv2 | no | ? | no | done |
Amiga (P-UAE) | Commodore Amiga | 2.6.1 | GPLv2 | no | ? | no | done |
Game Boy Advance (VBA Next) | Game Boy Advance | 1.0.2 | GPLv2 | yes | ? | no | done |
Game Boy Advance (VBA-M) | Game Boy Advance | 1.8.0 | GPLv2 | yes | ? | no | done |
Vectrex (vecx) | Vectrex | 1.2.0 | GPLv3 | yes | ? | no | done |
Commodore 64 (VICE) | C64 | 3.0.0 | GPLv2 | no | ? | no | done |
Atari Jaguar (Virtual Jaguar) | Jaguar | 2.1.0 | GPLv3 | yes | ? | no | done |
Sega Saturn (Yabause) | Saturn | 0.9.14 | GPLv2 | no | ? | no | done |
* License is GPLv2 compatible
If something in the core matrix needs to be changed, leave a message in the forum.
BIOS requirements
Some libretro cores require BIOS files to work, and those BIOSes must be placed in the system folder (with each BIOS being a binary file). For now you will need to find those BIOS files by yourself and and copy them to your system yourself as it may not be fully legal for Team-Kodi to provide them bundled with each libretro core that needs them. The reason for this is that these BIOSes are usually considered to be in an legal gray-zone and can be a little difficult to aquire, at least legally. For example, since all PlayStation emulators, like Beetle PSX & PCSX ReARMed, require a closed source BIOS file to work, and its BIOS file must be placed in the system folder on your emulator software (libretro cores in this case).
- See: https://github.com/libretro/Lakka/wiki/BIOSes and and http://www.lakka.tv/doc/Accessing-Lakka-filesystem/ (or see: http://github.com/libretro/Lakka/wiki/ROMs-and-BIOSes ). You should find the most up-to-date information here https://github.com/libretro/libretro-super/tree/master/dist/info and here https://github.com/libretro/libretro-database/blob/master/dat/BIOS%20-%20Merged.dat
BIOS requirement table
The table below lists all the required BIOSes which some emulators requires for each each emulated system, so if a systems BIOS is not listed here then it means that it should not require a BIOS file.
Warning! Linux is a case sensitive system. Please name BIOS files exactly according to this table. |
System | BIOS file | MD5 | Comment | |
---|---|---|---|---|
3DO - 3DO | panafz10.bin | 51f2f43ae2f3508a14d9f56597e2d3ce | ||
Atari - 7800 | 7800 BIOS (U).rom | 0763f1ffb006ddbe32e52d497ee848ae | ||
Atari - Lynx | lynxboot.img | FCD403DB69F54290B51035D82F835E7B | ||
Final Burn Alpha | BIOS goes next to the ROMs | |||
DOOM | BIOS goes next to the ROMs | |||
Magnavox - Odyssey2 | o2rom.bin | 562d5ebf9e030a40d6fabfc2f33139fd | ||
MAME 2003 | BIOS goes next to the ROMs | |||
NEC - PC Engine - TurboGrafx 16 | syscard3.pce | 0754f903b52e3b3342202bdafb13efa5 | ||
NEC - PC-FX | pcfx.rom | 08e36edbea28a017f79f8d4f7ff9b6d7 | ||
Nintendo - Famicom Disk System | disksys.rom | ca30b50f880eb660a320674ed365ef7a | ||
Nintendo - Game Boy Advance | gba_bios.bin | a860e8c0b6d573d191e4ec7db1b1e4f6 | ||
Phillips - Videopac+ | o2rom.bin ? | Same as Magnavox Oddessy2? | ||
Sega - Dreamcast | dc_boot.bin | e10c53c2f8b90bab96ead2d368858623 | Goes under system/dc/ | |
Sega - Dreamcast | dc_flash.bin | 0a93f7940c455905bea6e392dfde92a4 | Goes under system/dc/ | |
Sega - Mega Drive - Genesis | bios_CD_J.bin | 278a9397d192149e84e820ac621a8edd | Japan | |
Sega - Mega Drive - Genesis | bios_CD_U.bin | 2efd74e3232ff260e371b99f84024f7f | USA | |
Sega - Mega Drive - Genesis | bios_CD_E.bin | e66fa1dc5820d254611fdcdba0662372 | Europe | |
Sega - Saturn | saturn_bios.bin | f273555d7d91e8a5a6bfd9bcf066331c | ||
Sony - PlayStation | scph5500.bin | 8dd7d5296a650fac7319bce665a6a53c | Japan | |
Sony - PlayStation | scph5501.bin | 490f666e1afb15b7362b406ed1cea246 | USA (Can be renamed from scph7003.bin) | |
Sony - PlayStation | scph5502.bin | 32736f17079d0b2b7024407c39bd3050 | Europe | |
Sony - PlayStation Portable | ppge_atlas.zim | a93fc411c1ce7d001a2a812643c70085 | Goes under system/PPSSPP/ |
- Note that most of these BIOSes are not revered engineered releases but binary ROMs ripped from the EEPROM inside of an actual game console system hardware, so it is proprietary binary blobs (precompiled software binaries) which might still be under copyright depending on the console age and origins. It may be that some of those BIOSes are can be seen as Fair use since these game consoles are no longer sold and there is probabably no commercial value of them, but that is something that the XBMC Foundation need to talk about with attorneys about before being able to distributing such BIOS files as resource add-ons or bundled with each libretro core in an official repository.
What is a BIOS?
A BIOS (Basic Input Output System) is the startup code of a system and is required for certain emulators to work.
Where do I place the BIOS files?
You will need to place them into the System Directory (linux example for pcsx bios files: ~/.kodi/userdata/addon_data/game.libretro.pcsx-rearmed/system/ ).
Alternatively, you can place the into your Content Directory next to the game you are going to play.
Remember, since Linux is a case sensitive system, you have to rename the BIOS files according to this table so that the libretro cores will be able to find the BIOS files.
Why isn’t my BIOS working?
- Make sure the BIOS files are placed into the correct directory (see above).
- Make sure they are named correctly so the core can identify them.
- Make sure it’s the correct version/region of a BIOS.
- Make sure your files are not corrupted (bad source, broken download, etc.).
- Make sure to check the log for any errors.
FAQ
Beetle PSX
Controller not working in some games?
Some PSX games don't recognize correctly Analog PSX controller. To solve the issue go to Setting > Adavanced Settings and disable "DualShock Analog button toggle" setting. Your Gamepad should be then recognized correctly.
See also
- Gaming in Kodi - Index of game related articles
- Game management - A guide to managing game files for and in Kodi
- Game playback controls - A guide that describes the player controls and menus for gaming in Kodi
- Game controllers - Guides for configuring gamepads and jooystick controllers in Kodi
- Game add-ons
- Game development - A guide to developing games for Kodi
- Compiling Kodi with RetroPlayer
- Compiling existing game add-ons
- Game management - A guide to managing game files for and in Kodi