mame works fine with different directories the only issue you will have is with scrappers if you know how to do this though youll be fine. You can have a 2003 and 2010 dir with the roms all you have to do it pick the right emulator when launching
Also art book , is one of awsome classy theme which i really love and if it miss a system you have it bult to use a really cool font to look like that it's ok , and you can add any missing theme easly .
And belive me iam really have a huge collection of systems, so i always become sad when a lovely theme miss a system
Honestly there is enough information out there about installing retropie or some other front end on a PC that the process is pretty easy and spelled out even for someone as tech stupid as me. Given the price vs performance of relatively old and cheap PCs vs a new pi or even a pi4 for that matter, if I had it to do over again I would just go the PC route especially after figuring out that what some people define as “acceptable” performance for emulators like dream cast and N64 is an entire galaxy removed from what I would consider even playable.
So really it all comes down to your specific needs.
If your trying to emulate simple games >25-30 years old then a pi3 or 3b+ should be able to do it and honestly there are even exceptions to that depending on the game.
If it’s after the last two decades just go PC.
But really, sit down and make a list of about 10-20 games that you basically can’t live without, research the hardware needs for them and go with the strongest one.
Unfortunately there isn't a centralized list by model of system - most of the system/platforms supported found in the docs are supported, some of them are specific for PC (Gamecube, Wii, PS2 for instance) and are marked as such.
@mitu Could it be possible to launch a ROM without asking which emulator to use? I mean, when I select a gb game, can I know it's a gb game and consequently launch its respective emulator?
Sure, you can do that, but you'll have to basically add each game to the emulators.cfg and specify its emulator, just like when normally choosing the emulator through the Runcommand launch menu. Runcommand does not have a 'match by wildcard', but a 'match by name' based on the emulators.cfg file. The downside is that each game must be explicitly added with its emulator - you can do this through your script, but any subsequent game added in the new system will have to be processed again by your script.
Again, much easier would be to create a Collection and this will automatically taken care of by Emulationstation (i.e. launch the correct emulator). You're basically re-inventing a custom Collection from scratch, but trying to shoehorn it in the Runcommand launch sequence.
Can I have more than one default in the same emulators.cfg?
@pjft and to complete this ... I have collections that are named "RetroAchievements" and "RA - Battle Bugs". The Battle Bugs is for challenging games or for the Monthly Random Game introduced here (Currently Mario RPG).