EmulationStation, RetroPie, RetroArch/Libretro are all separate projects. Many get that confused, and every time some site talks about making a R Pi emulator box these forums get hammered with people having issues getting theirs to work. In-fact a traffic heavy tech news site linked to one two weeks back.
Emulationstation is just a graphical front end to launch emulators. People can make button config scripts and then they could be loaded from ES, but it hasn't happened yet. It isn't Aloshi's problem to provide a config script for each emulator, he is a nice guy doing this in his spare time. Would it be nice to have something for the more common emulators? Yes, but no one has done it. It isn't a paid project (Either RetroPie or EmulationStation) so we are in no position to make demands. The best way to get things done is to help by doing it yourself, if you can't do it yourself or don't have the time then you are at the mercy of others.
Most of the YouTube vids are of 1.1 and older versions. RetroArch emulators were much easer to configure back then (IMO). Many of the others fringe emulators were just as hard. So some ease of use was given up (it seems as I don't make decisions or even know any of the people working on either project) in order to make a nicer presentation. When I first loaded up RetroPie 2.3 I was pretty frustrated by some things, notably the movement of the directories from where I knew them to be, and the loss of the graphical config within Libretro emulators. But the reality is that it isn't that hard to edit a text file and make them work. I use an Xbox360 pad and after a couple tweaks everything has worked for me as expected.
The documentation just isn't there yet. I'm trying to work on some to help people but I'm time limited. RetroPie and ES are evolving everyday as we speak and nothing is concrete enough to really document things.
The Pi is not a consumer device, and it was never meant to be turn-key. It is meant to be a learning tool. When I get some more time I may try to write a bash script to populate all the config files, but I haven't written a script in over 10 years so who knows how that will go. I will also continue to write a tutorial here on the forums to help people. I think in the least it would be nice to have a script that would auto-detect a wired Xbox360 pad and populate all the config files as they tend to be the most prolific controllers out there.
Thanks for helping clear a few things up, please don't take me wrong the Emulation Station is an amazing piece of software and does exactly when I am looking for, a nice front end interface for my various emulators running in the background. And I really do appreciate all the (unpaid) time that has went into these projects, I shouldn't get too frustrated just because I can't understand the scope of everything. However, I have learned a bit in the past week so I think I am starting to get an understanding of how these projects work together. I have decided to put a hiatus on the Raspberry Pi on focus on an a dedicated Windows based computer connected to my TV. Once I get more comfortable I may move on the to Pi. So here is what I have been working on:
Install Emulation Station on the computer (with it being the first program windows boots to) and get it to recognize the various emulations and roms stored on the windows computer. First I tried installing Retroarch and wow the install seems quite complicated for an emulator, I mean I'm sure its a powerful program but with the compiling, and downloading of different tools, etc... I would really like to avoid RetroArch altogether for the time being (again I'm sure its awesome at what it does but I'm just not ready for that yet). With that said:
I want to focus on downloading standalone emulators like Stella and Snes9x and just have emulation station refer to those when browsing (no linux involved!
). I DID find a nice piece on how the FAQ of this site that refers to doing just this (it has a nice script example as well). However, I'm still stuck. I am getting familiar with the es_systems.cfg file and just need ES to recognize the emulators (i.e. Snes9x) that I am using. I am at:
<command>retroarch -L ~/cores/libretro-fceumm.so %ROM%</command>
and I just need to change that /\ to my stand alone emulators, I'm trying real hard but no matter what when I launch a game I get 'retroarch' (or whatever I type in right after <command>) is not a recognizable program or command, etc. I've seen this example on your site: <command>snesemulator %ROM%</command> which is getting closer but I'm obviously missing some big pieces here.
I feel that I am close, I can see the light at the end of the tunnel! Just need to go a little bit further! Again your assistance has been amazing, thank you!