Sx05RE: Retro Emulation Kodi Addon for CoreELEC, released for testing


I tried cd into roms folder and scraper.


Another question: Is there a list of all contained emulators in this addon? Like for example is there also dolphin emulator included? I see it here on github:


Dolphin for the s905? Not going to happen it’s just not powerful enough. The included emulators you can see in retroarch. But I will list all of the included cores when I release a new version in the next following days.


BTW, those are not the ones includes in the add-on. those are the ones that work the Kodi Retroplayer. (not all of them)

The cores included in the add-on are:

  • 2048
  • 4do
  • 81
  • atari800
  • beetle-lynx
  • beetle-ngp
  • beetle-pce
  • beetle-pcfx
  • beetle-supergrafx
  • beetle-vb
  • beetle-wswan
  • bluemsx
  • cannonball
  • cap32
  • chailove
  • crocods
  • dosbox
  • fbalpha
  • fceumm
  • freeintv
  • fuse-libretro
  • gambatte
  • genesis-plus-gx
  • gearboy
  • gme
  • gpsp
  • gw-libretro
  • handy
  • hatari
  • mame2003-plus
  • melonds
  • meowpc98
  • mgba
  • mupen64plus
  • nestopia
  • nxengine
  • o2em
  • parallel-n64
  • pcsx_rearmed
  • picodrive
  • pocketcdg
  • ppsspp
  • prboom
  • prosystem
  • puae
  • px68k
  • reminiscence
  • sameboy
  • scummvm
  • snes9x
  • snes9x2002
  • snes9x2005
  • snes9x2005_plus
  • snes9x2010
  • stella
  • tgbdual
  • tyrquake
  • uae4arm
  • uzem
  • vba-next
  • vbam
  • vecx
  • vice
  • virtualjaguar
  • xrick
  • yabause

But not all have been tested.

Plus these stand-alone emulators:

  • Reicast
  • Advancemame


I released a new version if anyone would like to try it, you should be able to install over the last version.


Hello, my name is Kifen(szkifen) and mine is PHICOMM T1(S912). I use LibreELEC-S912. aarch 64-9.1. After I add your plugin, the boot plugin jumps back to the KODI desktop. Unable to start Sx05RE Kodi Addon 2.2(S912). Is there a solution? PHICOMM T1 can’t use CoreELEC.HELP。:sob:


Sorry I have not tested this on LibreELEC, but maybe you can provide logs?


Upload tip“Sorry, new users can not upload attachments.”

I 'll upload it to another disk. Please download it.(log)

Download address:

Because I rely on the translator to communicate with you, so some places use inappropriate words, please understand. Thank you.

This MP4 file is an unplayable video that I shot.
Download video:


The add-on is made to work on a 32bit user-space, you are using 64bit. why can’t you use CoreELEC ?


PHICOMM T1 can not boot CoreELEC

LibreELEC S912 does not have 32bit: sob:
LibreELEC for S912 is only 64-bit.
CoreELEC S912(T1) is also unable to boot. There is no DTB: sob:

Can you help me make phocomm T1 for CoreELEC?(DTB)


have you tried all the dtbs after you burn your sdcard under /device_trees ?


All DTBs have been tried and are unable to boot. I have already linked the T1 information to you, and I am in trouble. Thank you。。。Chinese New Year in two days, I wish you a Happy Chinese New Year.


First of all, thank you @shanti for making this. I’ve been having a great time playing Zelda: The Ocarina Of Time on my Beelink GT1 Ultimate.

On that note, do you know where on the filesystem I should put high-res textures for N64 games? My best guess, so far, from reading tutorials, and trying to translate those to the locations used by this add-on, is:
However, Zelda seems to be ignoring them. The file name is:

Any help is appreciated.


I’ve never used the HiRes textures, but according to this link, you need to name those files accordingly

so it seems it should be THE LEGEND OF

The system folder is actually the BIOS folder AFAIK so they should go into


Considering the N64 emulator sometimes struggles to run, I am curious as to how good it would run with the HiRes textures, please let us know.


Thank you, @shanti. The combination of those two hints worked a treat (although I discovered that “plus” in the folder name should be all lower-case). That’s done wonders for The Ocarina of Time on my 55" television.

The Ocarina of Time is by far the most playable N64 game on this device. I was a little surprised at that because I’d have thought it would be more demanding. I can only assume that it’s been worked on more than the others due to its popularity. I’ve pushed it to 720p but the sound is a bit choppy. I’ll fiddle with some settings but I have to knock it down to 540p. Once I had it running at 720p, the high-res textures themselves don’t seem to have had any adverse effect on performance.

I haven’t played any others at 720p, but Perfect Dark was pretty good at native resolution. Super Mario 64 was playable, as was F-Zero (although the choppy sound starts to grate after a while). Goldeneye seems to struggle a bit too much, which is a shame because it’s the game I really wanted to play.

I would dearly love to try out the aarch64 dynarec. I even went as far as building aarch64 opengl-meson libs from the KVIM2 sources, with an aarch64 libhybris and CoreELEC. However, I couldn’t even get those to play nice together before even thinking about trying for an aarch64 version of your add-on. We may have to wait for Panfrost before we can see the real potential of the S912.

Anyway, enough rambling. Thanks again for your hard work on this and enabling such nostalgic pleasure.


hi every one i am a noob i’ve install it but when i lunch it (emulationstation we can’t find any systems) and freeze what should i do


You need to put the ROM images inside /storage/roms/[system]
So lets say you want to play NES games, you put the ROMS inside /storage/roms/nes

you can use network sharing or sftp to connect to the box.

“If you want to use an external HDD or a USB for your ROMS, make a directory called “roms” in the root of the USB device, then inside create an empty file called sx05reroms, place your ROMS inside the corresponding folder (nes, snes, etc, etc.) then with the device plugged start the add-on.”


Just a bit of feedback.

Installation of
ended with broken emulationstation (no theme, no default configs, no previously configured inputs, etc…).
The install script didn’t uncompress the content of
/script.sx05re.launcher/config/emulationstation/ folder.
The above happened both installing on top of S912 2.2 (addon) and from scratch (after uninstalling previously failed update and rebooting). In both cases the installation process was completed (message “addon installed” displayed).

I solved manually unzipping (through ssh) the above content in /storage/.kodi/addons/script.sx05re.launcher/config/emulationstation.

I use nightly builds (090206, if I am not wrong).

I noticed that the symlink is nested (…/emulationstation/emulationstation/emul, etc…).

Smaller thing: with roms on external disk and file sx05reroms, I end up with 2 roms (roms, roms2) symlinks in /storage. This happens if I boot with usb disk inserted, whether inserting it after booting. If I delete both, both come back.

Even smaller thing: configuring my cheap 2 bluetooth Shanwan gamepads in emulationstation gui (in kodi/retroarch they work out of the box) is a torture: they are totally unresponsive, and I struggled to reach the “OK” and save a totally messed es_input.cfg, with missing buttons, wrong axis and ids.
I kept a manually corrected copy of that file, and I overwrited the new default cfg with the working one.

For the rest: addon is gorgeous, thank you :slight_smile:


Thanks for the feedback! I will check all those points see if I can reproduce them, just a heads up, Nightly builds are currently being built on a unified device, and my add-on was not, so that might be why you are running with all those problems, but in theory this should not happen even with the unified builds.

is it possible for you to post your es_input.cfg file? I am trying to add some gamepad configs as default and it would help me a lot.

EDIT: Also I recently released a new version



Nightly builds are currently being built on a unified device

Not completely sure about this: my nb is 20190211 (not 2090206 as I wrote) s912 only, and the current changelog reports “unify_S905_S912 (Ray)” on 20190213.
I 'll investigate a bit on the above, at the moment the (manual) update from the custom channel doesn’t show the 20190214, which is actually there (now unified).

Also I recently released a new version

2.2.1 (script) from 2-3 days ago is the one that actually made the noise, updating from 2.2 (script) of 15 days ago.

About gamepads: mine are REAL crappy ps3 clones :slight_smile:
They work via usb (with vibration bug), but they never worked via bluetooth on s805, and they had various problems during the configuration on s912 (Libreelec, Lakka, Coreelec)… suddenly, they worked out of the box (no configuration needed: just attach/detach usb, then connect) on fresh installed Coreelec nightly build: in kodi, in your retroarch, but not in emulationstation.

They are correctly recognized as SHANWAN_PS3_GamePad through usb.
They are recognized as Sony_PLAYSTATION®3_Controller through bluetooth.

If it can be of any use, the (manually corrected) related section in es_input.cfg is:

<inputConfig type="joystick" deviceName="Sony PLAYSTATION(R)3 Controller" deviceGUID="050000004c0500006802000000000000">
	<input name="a" type="button" id="14" value="1" />
	<input name="b" type="button" id="13" value="1" />
	<input name="down" type="button" id="6" value="1" />
	<input name="hotkeyenable" type="button" id="16" value="1" />
	<input name="left" type="button" id="7" value="1" />
	<input name="leftanalogdown" type="axis" id="1" value="1" />
	<input name="leftanalogleft" type="axis" id="0" value="-1" />
	<input name="leftanalogright" type="axis" id="0" value="1" />
	<input name="leftanalogup" type="axis" id="1" value="-1" />
	<input name="leftshoulder" type="button" id="10" value="1" />
	<input name="leftthumb" type="button" id="1" value="1" />
	<input name="lefttrigger" type="button" id="8" value="1" />
	<input name="right" type="button" id="5" value="1" />
	<input name="rightanalogdown" type="axis" id="3" value="1" />
	<input name="rightanalogleft" type="axis" id="2" value="-1" />
	<input name="rightanalogright" type="axis" id="2" value="1" />
	<input name="rightanalogup" type="axis" id="3" value="-1" />
	<input name="rightshoulder" type="button" id="11" value="1" />
	<input name="rightthumb" type="button" id="9" value="1" />
	<input name="righttrigger" type="button" id="2" value="1" />
	<input name="select" type="button" id="0" value="1" />
	<input name="start" type="button" id="3" value="1" />
	<input name="up" type="button" id="4" value="1" />
	<input name="x" type="button" id="15" value="1" />
	<input name="y" type="button" id="12" value="1" />

Could be useful to swap keys a and b…