Trying to get Retroarch to work on A06

I’ve tried building and installing retroarch using the instructions found here: RetroArch Megathread

It looks like it worked. However, when I try to download cores from inside the app, it immediately shows an overlay that says Finished–but the menu starts to glitch (still shows the previous menu overtop of the new menu items as you move around), and it never shows me the option to download cores.

I also tried installing it and the cores using apt, and that seemed to work–but it crashed a lot, and a lot of the features didn’t seem to work.

I’ve made a little progress. I found a site that recommended opening the retroarch.cfg file, and sure enough, core_updater_buildbot_cores_url was set to “”.

I changed it to “index - powered by h5ai v0.29.0 (https://larsjung.de/h5ai/)”–which I thought would be the right one. It lets me download the cores, but they fail with a “Failed to load libretro core” error message.

Is there a better site to use to download cores?

1 Like

I’ll be testing retroarch sometime this weekend. I run it on a PC build using the official Lakka distro so I could compare some of the config pointers between the two.

Have you tried loading any content and associating a core to see if they did indeed install?

Thanks @hotchalupa. I tried loading a core, but it couldn’t find any. I then tried to load content–but it wouldn’t let me, because I didn’t have any cores. So it’s definitely not loading them.

As I mentioned in my previous post, I did some further research and found that the core_updater_buildbot_cores_url was set to “”. I fixed that, but apparently I’m pulling cores from the wrong place, because it let me download the cores, but they always fail when I try to launch them.

Is there a better source for cores than buildbot.libretro.com > nightly > linux > armv7-neon-hf > latest?

I have spent some time on this myself, this is how I made it work:

  1. Add libretro repo and install retroarch as stated on official site ( follow Ubuntu part ): RetroArch

  2. Run also: apt install retroarch-* libretro-*
    This will install additional retroarch resource files and most importantly get the right kind of libretro cores matching thr platform

  3. Now the magic; run: dpkg -L libretro-CORENAME
    Which tells you the path where cores are installed. You can just browse that in Retroarch and you are good to go. Replace CORENAME with an actual corename you installed, like libretro-mgba.

Enjoy!

5 Likes

Thanks @meszarosb! So far this seems to be working well.

Oh, man, I spent all weekend going through this. I was able to finally wire up the correct paths/URLs to allow the built in core downloader to work, however the next issue I ran into is that the Retroarch buildbot doesn’t seem to build arm64 versions of their cores. So, when using either the armhf or armv7-neon-hf, Retroarch would spit out a ELFCLASS32 error.

Anyway, recapping what you’ve called out:

  1. Use the Ubuntu PPA which does bundle arm64 cores
  2. Update the retroarch.cfg file to point to the correct info directory and core directory:
libretro_directory = "/usr/lib/aarch64-linux-gnu/libretro/"
libretro_info_path = "/usr/share/libretro/info/"

To get a new core on this fella, I think you need to compile the arm64 version yourself.

1 Like

Now the real question - can anyone get an SNES emulator working on this fella?

1 Like

SNES working, no issues. Meszarob’s #1 worked to get the Ubunto version going however could not run step #2. Instead, downloaded cores using libretro-super.git and then compiled the cores individually: $ git clone GitHub - libretro/libretro-super: Super repo for other libretro projects. Fetches, builds and installs.

Is there any way to get a working gpSP core for A06? mGBA performance are abysmal

Did you find a core that’s working better? After compiling the modules from the Libretro Super repo, I found that VBA Next seems to perform pretty well. I did compile it, so maybe it being compiled for Arm64 makes a big difference.

I definitely had luck cloning the Libretro super repo and compiling. I did “make” and then “make install”.

The “make” took at least 12 hours or so to complete, and required 10+ GB of space on my SD card. I had to flash a new SD card I had to make it work. And a bunch of modules didn’t compile, but all the ones I care about did! I had lots of trouble making any of the cores work before doing this.

As of this writing I was able to make the following work after compiling:
Doom
Cave Story
VBA Next (Gameboy Advance)

I am making some good progress as well. Being that you have the Libretro super repo you now have all of the 64 bit cores that run on aarch-64 that you can individually make. I also added multi-arch to my system so I can run 32 bit armfh, however, am sticking with 64 bit cores for now. This is my progress thus far:

Anything with yellow highlights means I got it to compile but not run properly. Orange means I could not complete the Make process.

3 Likes

@mferrari Thanks for sharing, super helpful!

Can I confirm:

  • Your results are all for A06? (I’m on A04 and strongly considering getting the A06 core.)
  • When you say “Works” in your results, does that mean runs, but possible with issues? Or runs smoothly (playable)? I’m finding that I can’t solve the choppy audio on the A04, although I know it’s possible, since games running under box64, and even box86, work smoothly, including the audio.

Yes, i can confirm that al the results are for A06. With respect to choppy audio in Retroarch, check the frame rate video / settings / output. This should run at 59.4 or so. If you are running much less than that the audio is gonig to chop. I found that the frame rate would run significantly lower if you install SDL2-dev. I do have SDL2 installed and it works fine, however, without the -DEV. Now as I did need SDL2-DEV to compile JZINTV and Mupenplus64, I did this on a seperate SD card with SDL2-DEV installed and then moved the compiled binary to my other card with just SDL2 and it worked, tears of joy were shed. I doubt that its A04 versus A06 causing issues.

sorry, and to answer your question, works means works well and is very playable. Occasional stutter on Mupen but not bad at all!

RetroArch failed to opened period on the A04 for me. I think it may be related to the fbcon Kernel issues I previously reported, which I discovered through the failure to properly open Firefox and other web browsers.

:grinning: I’m so happy – it’s working. I’ve been trying to get an SNES emulator working on A04 but hitting serious audio problems for days, making it unplayable. But, as recommended, doing a straight up make and sudo make install on the [GitHub - libretro/libretro-super: Super repo for other libretro projects. Fetches, builds and installs.] repo just works, and the resulting cores (for example snes9x2005) work well, with clean audio. Happy happy joy joy!

I did have the problem mentioned above with the build filling up the entire 32 GB SD card (the libretro-super directory ballooned out to 27 GB at one point). I offloaded as much stuff as I could while the build was running (it took hours), but it still filled up the card. All core builds failed after that. So I did it in two passes: First build as much as I could, install those. Second, clean out the repo subdirectories for the successful cores, and then build the rest.

Thanks @mferrari and @Starblade42 for the very helpful tips and info.

3 Likes