Author Topic: My current emulator setup  (Read 3424 times)

Offline idolminds

  • ZOMG!
  • Administrator
  • Forum god
  • *
  • Posts: 11,939
My current emulator setup
« on: Sunday, October 05, 2014, 08:14:29 PM »
Been setting this up over the last couple days. I wanted to organize my emulation directory since it is a bit of a mess and also wanted a nice way to view my ROM collection. Hard to get excited by about a text list, you know?

So I came across RetroArch which is itself a kind of frontend for various emulators. The emulators come as "cores" that you can select and load ROMs into. Pretty customizable but I haven't done a ton messing with it. People like its ability to apply shaders to give authentic CRT looks and the like but I don't do that stuff.

I pair that with LaunchBox to be my actual frontend that can look pretty. It lets you set up emulators per system and then import your ROM directory so when you launch a SNES ROM it will put it into the correct emulator. RetroArch makes this easy with a little command line switch and it support per-emulator config files. LaunchBox also lets you query a game database to automatically fill in game information and download things like coverart. If anyone wants help doing this then I can post about how to set it up, but for now...screenshots.

First up is my NeoGeop Pocket Color games. There weren't many games made for the system so it was a quick matter to import them and download the cover art, most of which I hadn't even seen before so that was cool.



SNES I had more games and the cover art on the database has been fairly high res so it was going to take forever to do, so I came up with a better idea. I would simply fire up the emulator and take a screenshot of the title screen and use that. Went much faster and I like how it looks.



There is a slider so you can scale the covers up and down, having more per row but smaller, or higher res if you want to really see the art. The setup I have now is a good fit to be able to see the art clearly while also showing more than just a few games.

You can also use Launchbox to launch any other program on your PC so Ive got some PC games listed in there, and slowly ripping my PSX games and getting them emulated, and also some arcade games. Its pretty cool. You could probably use this setup for a home theater PC since it can all be controlled with a controller, same with the RetroArch UI. Might be something fun to do in the future.

Speaking of controllers I finally found the drivers to this adapter I picked up at goodwill so now I can use a PS2, Gamecube, or Xbox 1 controller quite easily. Just using a spare PS1 Dualshock for now. Muuuuch better than using the 360 pad for emulated games.

Offline idolminds

  • ZOMG!
  • Administrator
  • Forum god
  • *
  • Posts: 11,939
Re: My current emulator setup
« Reply #1 on: Tuesday, October 07, 2014, 10:56:11 AM »
So only snag I seem to be running into now is getting rumble to work on my Dualshock. If I go into the game controllers part of Windows control panel I can see the controller, test the buttons, and even the rumble works fine. But for whatever reason it does not want to work in the emulator even though I think all the settings are correct for it. It's weird. Ultimately not a huge deal since I'm mostly playing games on systems that never had it, but when I play PSX games I'd like to have that working.

Offline Cobra951

  • Gold Member
  • *
  • Posts: 8,934
Re: My current emulator setup
« Reply #2 on: Wednesday, October 08, 2014, 06:39:03 AM »
This is intriguing.  How much work does it take to get this all up and running, and can my 9-year-old PC tech handle it?  (It handles the emulators through the PSX and N64 just fine, but those are the versions I've had installed for many years.)  I haven't been paying emulation any attention lately, so it's not like I have a huge interest in it.  Still. something new to tinker with.

Offline idolminds

  • ZOMG!
  • Administrator
  • Forum god
  • *
  • Posts: 11,939
Re: My current emulator setup
« Reply #3 on: Wednesday, October 08, 2014, 07:50:22 AM »
It's not that hard. I suppose I can write up a little guide. RetroArch is nice to use because it can share basic configurations across the different emulators so once you have it basically set up there are only a few minor things to change per system. And then in Launchbox all you have to do is point it to a different config file.

And as long as the emulators run on your system thats all that matters. You don't even need to use retroarch. As long as you can launch into the emulator you choose with the ROM (and maybe some command line stuff) then you can use whatever works.

Offline idolminds

  • ZOMG!
  • Administrator
  • Forum god
  • *
  • Posts: 11,939
Re: My current emulator setup
« Reply #4 on: Wednesday, October 08, 2014, 12:09:40 PM »
Alright, quick tutorial here. I think I can do this without screenshots for now. I'm also going to go with RetroArch because that is what I currently have set up. Warning Wall of Text, but its really not that bad.

Obviously download RetroArch and unzip it somewhere. Run RetroArch.exe. It will have a little thing showing you the UI controls but basically arrow keys to move the cursor, X accepts, Z takes you back.

First thing we need to do is change some settings, so go into the Settings area. The two main things is you want to set Config Save On Exit and Per-Core Configs to ON. This way each emulator core can have its own settings and if you're making tweaks to the settings it will save it when you quit the program.

Next you will set Path Options. Since we have no chosen a Core yet I think this sets your base level stuff. So, the Content Directory you want to set to your upper level ROMs folder. I have my ROMS in a single folder and then subfolders for each platform. This setting is really mainly for when you're loading stuff directly in RetroArch so its not terribly important. But its nice to set up for when you're tweaking things so you arent constantly having to re-find the directory using arrow keys.

Config directory is RetroArch\Configs, Core directory is RetroArch\libretro, Core Info Directory you can leave as the default <Core dir>, Shader is RetroArch\shaders, System directory is RetroArch\system. Yeah I know, pretty obvious. And some of them have defaults that seem like they should work but that wasnt the case for me so I went and set them manually.

You can go mess with the video settings and such but thats all pretty easy to mess with yourself. If you have a 360 pad plugged in I think it should use it automatically and everything is mapped like a PS1 pad and just works across various emulators. So once you have the basics set you should exit the program so it saves and then restart it.

Now I'll explain setting up SNES and then all the other emulators work basically the exact same way. So restart RetroArch and now we will select a Core. Since we set the Core and Core Info directories earlier you should see a list of platforms and in parentheses the name of the emulator itself. SNES has a few options and I chose bSNES Balanced. Though thats kind of a demanding emulator you might want to try bSNES Performance or the SNES9x. Once selected you should be back at the main menu and you'll see the 4th option down is Load Content (bSNES) or whichever emulator you have chosen. That and the line at the bottom of the screen tell you what core you are in.

The one weird thing I've noticed is the Core Options menu doesn't show anything until a game is already running. So go to Load Content (bSNES) and find the ROM you want to load and load it. Hooray! You should have a game running! Hit F1 to bring the menu back up and now there should be some Core Options if any are available, you can go into the settings to change the video stuff to your liking and what have you. Once that is all the way you want then exit RetroArch so it can save the config for that core.

Now we can move over to LaunchBox. Fire it up, I think it has some tutorial thing? I forget. But you'll basically have kind of a blank area. Right click and choose Add so we can add a game and set up some stuff. Window will pop up to add a game. There is a box with tabs so switch over to the Emulation tab and hit the checkbox to use an emulator. Hit the button to Add an emulator. Select a name, and you will want to make this unique for the different platforms even if we're using RetroArch for multiple platforms. So I have RetroArch PSX, RetroArch SNES, etc. Set the name you want, set the emulator patch to where you have RetroArch.exe.

Now the important bit. The command line parameters. In your RetroArch\Configs directory you should find the cfg file for the core you set up earlier. So if you did bSNES Balanced like me you will find bsnes_balanced_libretro.dll.cfg. Back in the LaunchBox emulator window where you can put in a command line parameter you want to put -c configs\bsnes_balanced_libretro.dll.cfg The "Make this the default emulator" we need to leave for a second, so hit OK.

Switch back over to the Launcher tab and all but the top line will be greyed out. Here you want to point it at your ROM file. The Title field at the top should fill in with the filename, so edit that if needed and hit the Search TheGamesDB.net button. You'll get a drop down list of games that that search brought up so select the one that matches the game you are adding. This will fill in all the other details of the game for you, the most important one being the Platform. Click OK to close the window and now the game should be added to Launchbox but we aren't quite ready yet. Don't worry, almost done.

Right click the game and choose Edit. Emulation tab and choose Edit the emulator. Now you should be able to select Super Nintendo in the drop down box for "Make this the default emulator". Click OK. There should be a button on the bottom right for downloading images to use to make a pretty display so you can do that, or right click that big box and choose local art if you have any like the title screen screenshots I did. Click OK and you have your first game done! Whew!

Now for the easy part. In Launchbox you can go Tools->Import Games->From ROM Files. Choose ROM directory, choose the platform, choose the emulator. The file filter is nice depending on how well your ROMS are organized. If you have a bunch of crap in the directory it will add EVERYTHING so its best to limit it to just the ROM files. Mine are all .sfc to you can put sfc and it will only import those. Set the checkboxes how you like, you can even have it automatically download the art though that crashed on me. Might be an issue with my slow connection, I dont know. Anyway. Click go and BAM, all your SNES ROMs should be imported and art downloaded and all set up to use the emulator. Double click one to try it out.

So that is basically it. Doing other platforms works in the exact same way only you need to make a new emulator profile in Launchbox and have it point to a different cfg file. You can use emulators other than RetroArch but you'll have to see if it needs command line settings or what. I wrote this kind of stream of thought style but I was opening everything up to make sure I got the names of things correct. If you need something clarified let me know and Ill try help.

Offline Cobra951

  • Gold Member
  • *
  • Posts: 8,934
Re: My current emulator setup
« Reply #5 on: Thursday, October 09, 2014, 04:41:21 AM »
Oh, man, you didn't have to go to all that trouble to explain.  Thanks for the writeup.  What I try to do is associate the rom files with their respective emulators, then just double-click on roms when I want to play them.  That doesn't always work, like I associate the SNES rom extensions with SNES9X, because it works as intended for quickly firing up a game, but my preferred emulator is ZSNES, which doesn't play nice with that Windows facility.  I'll take the trouble of firing it up and scrolling down its list when I'm going to play in earnest.

In the old command-line days, I  went as far as creating an argument-parsing batch file, creating a shortcut to it, and associating that with the related roms, just so I could dclick on them.  Yeah, ease of selection has been a priority in emulation for me for a long time.  This RetroArch does looks cool, and your startup guide will be a good help in setting it up.  Thanks.  And yes, my rom collection is very organized.  Save states and battery files are in their own directories.