Maker Monday: EmulationStation and RetroArch on Windows

I love my video games.  I can waste all kinds of time playing them, from old Atari to the (semi-) latest and greatest on the PS4 or Steam.  But lately, I’ve been trending towards the older stuff, and it’s actually led to some productive projects on my part.

I suppose it’s the truth about science and technology (and motivation): the enterprising slob will work hard now in order than he can be lazy later.

mqdefaultOne such project, which I just finished a few hours ago, involved running EmulationStation, a slick front-end navigation software that lets you glide between emulators you can run on your computer, on Windows.  Of course, emulation aggregators still being fairly new to me, I didn’t realize that was all it did until shortly before getting everything to work.  Fortunately, the searching I did led me to a YouTuber’s wonderful instruction video, which also showed me how to get RetroArch, which is what runs and manages the various emulators one may try to use while trying to play all those games of old.

In the past, running emulators was fairly easy, as you were often doing it one emulator at a time.  You could find an emulator for, say, the Atari 2600, download it, then download the ROMs (aka game files) for that system.  Once all that was done, you would run the Atari emulator, then use it to open the ROMs and play the games.  It was simple enough that I could do it with little effort.

And you can still do it that way if you want.  But as the number of legacy gaming systems grows larger and larger as the years wear on, having an all-in-one approach can be nice if you want to play on more than one system.  RetroPie, for example basically runs EmulationStation and RetroArch together, specifically for Linux and Raspberry Pi users, and it’s great.

6mlcyt1I wanted a similar experience, but for Windows instead.  That way I could put the full power of my PC behind the gaming, and run some of the more robust systems.  In this day and age, I knew it would be more than capable of running any of the systems RetroArch supports.

Now, in order to get this newer experience, some of the same old basics still apply.  You’re finding the software, downloading it, and getting the ROMs and loading them when needed.  But you’re going to end up doing some configuring on your own, and that can get a little scary at first.  As best I can remember, the list of tasks went something like this:

  1. Download the EmulationStation installer, and run it.
  2. Open the software, then close it out.  This generates the .emulationstation folder in Windows Explorer you’ll need to work in.  (ES itself doesn’t work yet, because you need to have a multi-system emulator to work with it. Like RetroArch.)
  3. In the .emulationstation folder, find the es_systems.cfg file.  Open it in Notepad.  This is where you’ll configure the display notes and data of the gaming systems you want to play.  (The YouTuber whose video I followed had a file I could simply copy and paste so I didn’t have to think too much about this, but you’ll need to configure it if you’re going to use different game systems than what he had on his file.  It’s actually not difficult to copy the structure and specify which systems you want to use.)
  4. Download a build of RetroArch from libretro.com that’s compatible with your version of Windows (32-bit or 64-bit).  Also download the cores.
  5. Go to the .emulationstation folder on your user directory in Windows, and create a new folder, named systems.  Inside the systems folder, create another new folder, retroarch.
  6. Extract the contents of the RetroArch build (it should be a zip file) to the retroarch folder you’ve created.
  7. Extract the cores to the cores folder that should now be in the retroarch folder.
  8. Add your ROMs.  You’ll have to go and find them online, and I’d recommend filing them into folders categorized by system.  Put your ROMs in a new folder (roms) in the .emulationstation folder.

It’s not an impossible series of steps by any means, but perhaps a touch more intimidating than it used to be.  My advice: take your time, pay close attention to the video or tutorial web page you’re using, and do your best.  I’ve been pretty successful at these projects so far, and it’s mostly been by being careful and thorough as I go.  For the most part, however, I’m finding these experiences great, as I both learn how these things work and feel satisfied that I’ve conquered another skill to add to my meager technological repertoire.

And of course remember, piracy is bad.  I know these games are old, and haven’t been sold in years, but video game companies still don’t want you playing them unless you own a copy of the games you download–and for some, even that isn’t good enough.  Just remember to game responsibly.

At this point, you should be good to go.  I’d recommend doing some play testing, and seeing how functions like saving and game navigation work, but based on the little gaming I was able to do, I’m for the most part pleased with how this project turned out.  It’ll be fun to recreate some of the gaming memories I experienced during my misspent youth.

Happy gaming!