chaos

RetroArch Setup Guide

Recommended Posts

This is currently a work in progress!!

 

How to install RetroArch on PC

1. Download RetroArch from their websitehttp://www.retroarch.com/?page=platforms.  Current version - 1.7.3

Download installer (64-bit) if you have a modern (Windows 10) PC. If you have a Windows 7 or 8 PC, you will need to check if you have a 32-bit or 64-bit system. You can do this by right-clicking on "Computer" in the Start Menu (or Desktop icon) and clicking on Properties.  Windows - How to check 32 or 64 bit. Download the appropriate installer.

Windows Version.png

 

2.  Run the RetroArch installer - Follow instructions of the installer. When it asks what directory to install it to, change the directory to something you prefer. The default directory it chooses is actually hidden, so if you did install it to the default, it will be hard to find the files if you need to make changes. I choose C:\RetroArch in this example. It will also ask what you would like to install (RetroArch is selected and greyed out). One of the other options is "DirectX9.0c", leave it unchecked for now (not sure this is needed on newer PCs, Win7 and up).

RetroArch-Install.png

 

3. Start RetroArch - 

You can download this file, and put it into your RetroArch home folder (C:\RetroArch if you did as in Step 2). Once you do this, start RetroArch, and you can skip to step 5.   

retroarch.cfg  (6/28/2018)

When you first start up, it will make a configuration file called retroarch.cfg in the RetroArch home directory. This will have all of the configuration of the program saved in it. We might have a custom one in the future. Regardless, when you first start up you will see the Main Menu (looks a lot like the menu on the PS3).

When navigating with the keyboard, the arrow keys will move through the menus and change options, the Delete key acts like the Back button, and the Enter/Return is to select. ESC will quit the program. 

Initial Startup.png

4. Change the Menu Interface - This is optional, if you like the XMB interface, you can leave it, however I recommend the RGUI interface; it is easier to navigate. To change it, use the right arrow on the keyboard to move to the 2 gears (Settings). Press Enter on the first selection ("Driver") and use the down arrow to go down to "Menu Driver" and change it to "rgui" (use the right/left arrows to change the option). Once done, hit ESC (ESC closes the software), and restart RetroArch. It should now look like this (with a different menu bar, took photos in Mac):

Main Menu.png

 

5. Setup Controller - You can use your controller to navigate the menus. This is a little bit confusing, so I will explain it first. The button layout for the controller is the same as what RetroArch calls a "RetroPad". The RetroPad is similar to an SNES controller, with analog joysticks and 2 sets of shoulder buttons. We DO NOT need to define all of the controller inputs, so you only need to set the ones you will use. Unfortunately, a Genesis controller has a 3 or 6 button layout, and the names of the buttons do not match the buttons on the Genesis controller.

Before you try to set up your controller, there is a good chance it will work out of the box. RetroArch has many preconfigured controller configurations saved. You can test it by using the directional pad and trying to navigate the menu. 

If your controller works, skip this step and go to Step 6. 

It seems all of the RetroUSB products, most other popular Genesis USB adapters, iBuffalo controllers, Xbox 360 and One, and PS4 controllers work out of the box. There are many more too, please post if they work! 

For more info and to look at common controller layouts, you  can look at this - RetroArch Common Controller Button Layouts

Here are the 2 types of Genesis controllers and their assigned button names in RetroArch. The labels in the photos correspond to the Input labels in the program. SNES is easy, as the layout is the same as the RetroPad, and you can just ignore the extra button inputs:

Genesis 3 Button.pngGenesis 6 Button.png

So, to set the buttons, in the Main Menu, go to Settings->Input. The following window will open. I recommend changing the "Menu Toggle Gamepad Combo" to something so you can access the Menu easier during a game if needed. I also set "Max Users" to 2, just so during netplay, I can limit the amount of people who can connect to play (who knows if this actually does something).

Menu Toggle Gamepad Combo.png

 Select "Input User 1 Binds". If your controller does not have analog sticks, make sure "User 1 Device Type" is set to "RetroPad". If your controller has analog sticks, and you would like to use them, change the "User 1 Device Type" to "RetroPad w/analog". You can either choose to select each button separately, or choose "User 1 Bind All", and I just assigned random keys to the buttons that my controller did not have.

User Input.png

So, for example, if you have a Genesis USB controller, "User 1 Y button" should be assigned to your controller's A button, "User 1 B button" assigned to the B button, and "User 1 A button" assigned to the C button, "Start button" to Start, and the "D-pad" to the directional pad. Once you are done assigning buttons, the controller can now be used to navigate the menu (I think the button assigned to A makes selections, and the button assigned to B will back out).

Go up to "User 1 Save Autoconfig" and select it to save the configuration.

 

6. Download Cores - Back out to the Main Menu, and choose "Load Core...", then choose "Download Core...". If you are connected to the internet, you will see a large list of cores populate the screen. They are in alphabetical order.

Choose the following - Genesis Plus GX and PicoDrive for Genesis, Snes9x for SNES:

Genesis Plus GX Core.pngSnes9x Core.png

Select them, and RetroArch will download them for you.

 

7. Load Core and Content (a ROM) Now that the core is downloaded, we need to load the core, then load content in order to play. A ROM is considered "Content". So back at the Main Menu, select "Load Core...", then select the core to load. After selecting a core, it will list it in the bottom left corner of the screen.

Next, we need to load the ROM. The "Load Content..." in the Main Menu is very hard to navigate, but if you go to the Menu Bar up top, go to "File->Load Content...", it will open up a window where you can navigate to the folder where the ROM is located. Select the ROM, and it will load. There will be some messages at the bottom of the screen, but these can be ignored if the ROM loads fine. In the future, there is a

To quit the ROM, you need to access the "Quick Menu". The Quick Menu is only available when a ROM is loaded. You can use the button combination that you set before, the F1 key, or go to the top Menu Bar, "Command->Menu Toggle". In the Quick Menu, you can see how you can save or load a state, or Quit the game ("Close Content"). NOTE: My Quick Menu might look different than yours because I removed some Menu Items. I will show how to do this later.)

You can actually hit the back button in the Quick Menu to access the Main Menu, a trick which will be used for Netplay.

Quick Menu Game.png

Once the core and the ROM have been loaded once, the combination will show up in "Load Recent" on the Main Menu. Once it is listed there, you never have to load the core and content separately, you can just go to "Load Recent", choose the ROM and everything will load automatically.

 

Troubleshooting

No Audio while ROM is playing - @angryjay93 and I (on my laptop) had this issue. If you go to Main Menu->Settings->Driver, change the "Audio Driver" to "dsound", restart RetroArch, and try it again. This seemed to fix the issue. This might affect some PCs, though not all.

Genesis Specific:

 

SNES Specific:

In Netplay, after connecting, you get an in-game screen message "Multitap 5 needs to be connected to Player # 2"For some reason, RetroArch thinks there's a multi-tap connected to Player 1. Go into Quick Menu->Controls and change the Player 1 to "SNES Joypad". One or both players may need to do this. Return to the game and it should work fine.

 

We need more testers to find out any other quirks/issues!!!

 

 

 

  • Like 2
  • Thanks 2

Share this post


Link to post
Share on other sites

RetroArch Configuration

Below are what I recommend for configuration. It removes unneeded things from the menus, and makes the experience a little more enjoyable. These are not necessary, but are helpful.

 

NOTE: I attached a copy of my "retroarch.cfg" file. This contains all the changes made in this section. Please make sure you look at the Netplay post below this, and change your Username. That should be the only item you need to change. Copy this file into the RetroArch folder (C:\RetroArch if you followed the above directions). 

 

File - retroarch.cfg (6/28/2018)

 

 

1. Notification Settings - Go to Main Menu->Settings->Onscreen Display->Onscreen Notifications. I changed the Font Size to 14.0, the original is way to large and takes up a good portion of the screen. 

Onscreen Notifications.png

 

2. Run RetroArch in Background (so you can click outside the window and not pause the emulator) -  Go to Main Menu->Settings->User Interface. Set "Don't run in background" to OFF. I kept "Pause when menu activated" to ON, but you can change this if you'd like as well.

User Interface.png

 

3. Remove some items from Main Menu - This will clean up the Main Menu and remove some items we won't be using. Go to Main Menu->Settings->User Interface->Views and set to "OFF" the items you'd like to remove. I set mine up like so: 

Views.png

 

4. Change Save State to Auto Increment - This is very useful, since you don't have to worry about incrementing save states (there are a TON of slots). Go to Main Menu->Settings->Saving and set "Save State Auto Index" to ON.

Save State Auto Index.png

 

5. Change Options on Quick Menu -  Same as above with the Main Menu. Go to Main Menu->Settings->User Interface->Views->Quick Menu. Set the items you will not be using to OFF. I chose the following:

Quick Menu.png

 

  • Thanks 1

Share this post


Link to post
Share on other sites

Netplay Setup

Before attempting Netplay, you need to set some things up.

 

NOTE: If you downloaded the "retroarch.cfg" file in one of the two posts above, and put it into your RetroArch folder, you will only need to do Step 1 here. Network Settings will already be set up for you. 

 

1. Choose a Username -  This name will be used to display when you are hosting a game. Having a name will be easier than giving your IP address to the person you are playing against. Go to Main Menu->Settings->User. Choose "Username" and set it (please use your Discord or Forum Name for this).

User.png

 

2. Set up Netplay settings - These are still a work in progress as we continue testing. Go to Main Menu->Settings->Network. RetroArch Netplay features something called a "relay server". This is similar to server in Kaillera for Gens, or ZBattle in ZSNES. The thing is, there's only one server (well, there's 2 actually), located in New York, NY. @angryjay93 and I played some games using the relay server, with me being in a hotel in Albany, NY, and him in Sacramento, CA. We had very good smooth play, with occasional blips (I'm on Hotel Wi-Fi, what could be worse). I will explain what Netplay in RetroArch does in a different post. For now, use these settings (the input Latency Frames one may change).  Note that on the best possible connection, Gens adds a 2 frame delay, which is what I have set here. This number might need playing around with, and we can actually set the Input Latency Frame Range to a value like 6, and allow RetroArch to choose how many to use depending on the connection.

 

EDIT: I asked the RetroArch Netplay developer on Discord, and he said to leave the "Input Latency Frames" to 0, and the "Input Latency Frames Range" to 0 as well. If your computer cannot handle it, then adjust the "Input Latency Frames" for a game that needs precise inputs (like NHL'94) and use the "Input Latency Frames Range" for games that where the timing isn't critical.

 

Network-New.png

 

 

 

Edited by chaos
Added config message.
  • Thanks 1

Share this post


Link to post
Share on other sites

ChaosRetroarch.jpg

  • Haha 1

Share this post


Link to post
Share on other sites
18 hours ago, chaos said:

No Audio while ROM is playing - @angryjay93 and I (on my laptop) had this issue. If you go to Main Menu->Settings->Audio, change the "Audio Driver" to "dsound", restart RetroArch, and try it again. This seemed to fix the issue. This might affect some PCs, though not all.

I had the no audio issue, but the fix is actually here (at least for me):

Main Menu -> Settings -> Driver -> Audio Driver

Edited by aqualizard

Share this post


Link to post
Share on other sites
1 hour ago, aqualizard said:

I had the no audio issue, but the fix is actually here (at least for me):

Main Menu -> Settings -> Driver -> Audio Driver

Thanks, fixed!!

Share this post


Link to post
Share on other sites

Bumping this, I made a few changes. After speaking with the developer, use Input Latency Frames = 0 and Input Latency Frame Range = 0 for netplay.

  • Thanks 1

Share this post


Link to post
Share on other sites

Bump.

The hardest part about the setup is the controller. Well, it looks like some controllers will be identified by RetroArch and will use a preset controller configuration. With this, you won't have to worry about setting up your controller, it will work right out of the box. If yours works out of the box, let me know so we can compile a list.

I know that the RetroUSB adapters, iBuffalo controllers, XBox 360, PS4 are autoconfigured.

Share this post


Link to post
Share on other sites

Bump, made some updates. Download Genesis Plus GX and PicoDrive from the Sega section in "Download Cores...". Also, please use the "retroarch.cfg" file I posted in one of the top two posts. This will have everything pretty much set up for you when it comes to program settings. 

  • Thanks 1

Share this post


Link to post
Share on other sites

Bump, updated the Retroarch.cfg file to remove a button assigned to Exit.

  • Thanks 1

Share this post


Link to post
Share on other sites

But why would I not want a button that instantly closes the emulator even if I'm in the middle of a game?

Share this post


Link to post
Share on other sites
19 hours ago, smozoma said:

But why would I not want a button that instantly closes the emulator even if I'm in the middle of a game?

No, by mistake, I had it assigned to a controller button by accident, and left that in the config. I must have changed it back after I uploaded it. You can assign it yourself if you'd like in Input Hot Key Binds. It was causing conflicts depending on what else you assigned that button to. I think it was button 6 on the controller (all controllers are different). Just so happened on Ice's controller, his button 6 was Start, so whenever he hit Start, it would exit the program, even though he assigned the Start button to the Start input. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Who's Online   0 Members, 0 Anonymous, 15 Guests (See full list)

    There are no registered users currently online