RetroArch, runahead and Raspberry Pi 4 – the results are in

Thanks to a tester called Namanix, we can tell you in no uncertain terms that runahead with RetroArch works great on Raspberry Pi 4 for systems up to and including the GBA. With runahead configured right, you can get latency BETTER than the original console (on a CRT)!

I repeat again – with Raspberry Pi 4 and RetroArch, latency is NOT A PROBLEM thanks to runahead. You don’t need magic controllers or any fancy tech – but I’ll let the numbers speak for themselves.

  • Mario Kart Advance – VBA Next – 5 frames ahead – runahead – second instance – 65-75 fps
  • Super Mario Advance – VBA Next – 2 frames ahead – 2 instances – 86fps
  • Mario Kart Advance – VBA Next – 2 frames ahead – 2 instances – between 65 – 75 fps full speed
  • Mario Kart Advance – VBA Next – 2 frames ahead – 1 instance – 50fps
  • Super Castlevania 4 – Snes9x 2010 – 5 frames ahead – 1 instance – 68fps
  • Super Castlevania 4 – Snes9x 2010 – 5 frames ahead – 2 instances – 140fps
  • Sonic – Genesis Plus GX – 5 frames ahead – 2 instances – 125fps
  • Streets of Rage 2 – Genesis Plus GX – 2 frames ahead – 1 instance – 117fps
  • Super Castlevania 4 – Snes9x 2010 – 2 frames ahead – 1 instance – 100fps
  • Super Castlevania 4 – Snes9x 2010 – 2 frames ahead – 2 instances – 135fps

So, in other words, RetroArch and runahead is a done deal for NES, SNES, Genesis, and GBA on a Raspberry Pi 4. Better than console latency, better than on a real CRT. Put a fork in it, it’s done! All this for $50 tech, too. Kinda hard to beat in value.

Introducing the RetroArch Disc Project!

You bought all these old games on physical media decades ago. Why should you have to buy it all over again? Why, by that same token, should you have to buy expensive hardware by up and coming startup companies whose main selling point is just to be able to run your physical CD retro games again, but on expensive proprietary hardware built around open source software? Everybody with a CD-ROM drive and with DIY hardware should be able to do this! It’s the year 2019, this stuff should be commonplace and as accessible as drinking water from the tap!

That was our line of thinking when we set about creating the RetroArch Disc Project. We are adding physical CD-ROM support to RetroArch, and you will get to play around with an initial version of this VERY SOON! It will be a case of trial and error, and throughout this process, we will need your help as a community to tell us which CD-ROM drives work, which ones have trouble reading anything, we will need pull requests and code contributions. But we are convinced that at the end of this road, all of us will be finally liberated from the shackles of artificial restrictions surrounding our own legally bought copies.

So, to give you some brief idea of what to expect:

  • The initial version that we intend to release will be targeting Sega CD games for now. We have tested a few games and they seem to work.
  • Bugs might still happen as previously indicated. – There might still be Redbook audio issues, or they might just run fine.
  • We will be targeting Windows and Linux for now.
  • Based on our initial testing, you will have better luck with internal CD drives for now than USB-based CD drives. But your mileage may vary. That is why we need you involved in this project.
  • Games with copy protections will not run for now. Thankfully, they are in the minority.

What is our scope for the project:

  • Better compatibility
  • More system support. PlayStation1 is very likely next.

We hope this project will be a boon for anybody with an SBC (Raspberry Pi or otherwise) and/or anybody with their own desktop PCs! Let’s make RetroArch a platform where we can take our own physical CDs and run them as effortlessly as on the original real game consoles!

As ever, everything we do will be open source.

More to be unveiled soon! Stay tuned…

Play! libretro core already working! Will be on buildbot soon!

Play! is a Work In Progress PlayStation2 emulator. Thanks to the great efforts of Zer0xFF, who took three days out of his busy schedule to port the emulator to the libretro API, we can start rolling out this emulator to our buildbot soon!

It must be stressed that Play! is a Work In Progress PS2 emulator, and we mean that literally. Don’t expect every game to run perfectly, far from it. However, it has a solid foundation and already has working dynamic recompilers for all the popular architectures, its value which cannot be understated. The libretro core also already has working savestate support.

This core will require OpenGL on the desktop and OpenGL ES3 on mobile devices.

Game compatibility is entirely dependent on the state of the upstream #Play! emulator. So as Play! improves, so too will the libretro core!

#Libretro is currently a Patreon backer of the Play! project, and we are very grateful to Zer0xFF from the Play! project for getting this port up and running in less than 3 days! Good open source PlayStation2 emulation deserves to get more funding, and we are happy to do our part. We hope you will as well!

Note too that the PCSX2 core bounty is still alive and well, and can still be picked up by any developer willing to port it to the libretro API.

RetroArch – In Development – World-first text to speech in emulators – Update!

Earlier this month we showed you RetroArch’s world first text to speech implementation for emulators. You can read that previous article here.

Since then, this feature has been immeasurably improved. Onscreen character recognition and live text to speech translation is now done at the press of a button. You bind the AI Service key to a button or key of your choice, and as soon as you press it, a scan of the image will be taken in real-time. Any characters that were recognized as text will then be translated from text to speech.

In this video, we are running a local instance of vgtranslate on the same computer. This cuts down a lot on the latency you could perceive in the previous video. The other big difference is that the core no longer has to be paused manually and then unpaused to do the OCR scan – you now press a hotkey and the game continues running without any interruption. This provides for a much more smooth and seamless experience.

Shown in this video is a test run of several cores and games: Quake 1 with the Tyrquake core, Mega Man 4 with a NES emulator core, Trials of Mana/Seiken Densetsu 3 with a SNES emulator core, and finally Castlevania 3 with a NES emulator core. The OCR/text to speech system works with ANY libretro core that does not use hardware acceleration right now. So any core that doesn’t rely on OpenGL/Vulkan/Direct3D in order to function should be good to go.

Play! (PlayStation2 emulator) getting a libretro core

The PlayStation2 emulator Play! will be seeing a libretro port in the near future. We’ve reached an amicable agreement with two devs to make this happen. We’ll also be supporting their Patreon monthly from now on, just like we’ve supported other Patreon emulator creators for little over a month now as of this writing.

Note that this is separate from the PCSX2 core bounty, which is still ongoing and is still its own thing. We still need to find a bounty hunter for that one, though.