How to Run Emulated Games Directly on Steam (and Steam Link)

We’ve already written about how you can stream non-Steam games and your desktop using Steam Link, but running a console emulator through the streaming box – and Steam in general – is a little more of a challenge, so we’re going to take you through the process step by step.

The first thing to know is that there’s more to this process than simply adding your emulator to Steam as a non-Steam game. This will open the emulator, but you still need to manually open individual ROMs/games. Also, this is nigh-on useless in Steam Link because it won’t detect your controller.

For this, you’ll need an excellent and relatively new tool called Steam Rom Manager (no longer available). Using this tool you can set up parsers, which are sets of instantaneous commands that we’ll use here to make your emulator games/ROMs appear in Steam, then run directly through Steam.

First, install the latest version of Steam ROM Manager. Once installed, open it. It should open straight to the “Parsers” page. You’ll need to create a separate parser for each emulator (PCSX2, Dolphin, Cemu, etc.) you want to get working through Steam, but the basic commands are similar for many of the biggest emulators.

Note: This tool is still in its early stages of development, and some emulators require different commands to others. If you run into trouble or find that certain commands don’t work, just head over to the Steam ROM Manager Discord channel where the super-helpful community is on hand to answer your questions.

Here’s how my parser for a PS2 emulator (PCSX2) looks, and below that we’ll explain what each box means and what to type into it.


  • Parser type: Glob
  • Configuration title: This is for your reference, so we recommend naming it after the emulator you’re creating a parser for.
  • Steam category: ${PS2}. Replace “PS2” with whatever category you want games for this emulator to appear under in your Steam library. It doesn’t need to be an existing category in your library. You can create a new one if you like.
  • Executable: Use the “Browse” button to navigate to the exact directory of your emulator .exe file. For me this is “F:GamesPS2PCSX2pcsx2.exe,”
  • ROMs directory: Use the “Browse” button to navigate to the folder where you keep your ROMs/emulator games.
  • Steam directory: Use the “Browse” button to navigate to your Steam directory – “C:Program FilesSteam” by default.
  • User’s glob: ${title}.@(7z|iso|bin)

The above is a good default glob to have for PS2 games which generally come in the 7z, iso or bin formats. However, file formats for different ROMs tend to vary depending on what console they’re for. GameCube games, for example, tend to come in the gcm, gcz and iso formats, so you’ll need to have those in the brackets instead. With SNES games, you’re more likely to need the ‘zip’ format contained in the brackets. Ideally, go to the folder where you keep your ROMs for a given emulator, look at what formats the games are in, and set the formats in the brackets to correspond with them

  • Command line arguments: “${filepath}”

This is where things get a bit more complicated. While the above command line argument is a good starting point (it works for PCSX2, Dolphin and Mupen64, from our testing), there are a lot of variations you can use here. If you click the green “i” icon above the box, you can see some recommended command line arguments for various emulators, and if you plan on playing your games over Steam Link, then you should also add the --nogui and --fullscreen arguments to your command line. For example, it would end up looking this this:

We stress again that your command line arguments depend on your individual circumstances, so if you get confused here, just ask the community!

Image providers – Select all the possible image providers here, so that Rom Manager scours as many sites as possible when looking for images to add to your emulated games (they look great in Big Picture Mode!).

Connect Your Emulators to Steam

When you’re ready, click “Save,” then ‘Test parser.’ You should get taken to a log screen saying it’s found your Steam user account, followed by a list of all your games for that emulator.


Your parser for that emulator is now ready to link to Steam. You can, however, continue creating parsers for all your emulators by clicking “Parsers” in the pane on the left and following a similar (though obviously not identical) process to the one above.


When you’re ready to link your emulated games to Steam, click “Preview” in the pane on the left, then “Generate app list.” Like magic, all the games connected to your parsers will appear. Click “Save app list,” open Steam, and your games should be in your library ready to play.


While it may not seem so complex, there’s a lot of work going on under the hood of your PC for all this to come together. Sometimes a bit of variation is required, or sometimes one misplaced letter can make the whole thing fail. Once you get the hang of it, though, your PC gaming will rise up to a whole new level. Again, don’t be afraid to ask around with this tool’s Discord community. They appreciate the feedback.

Robert Zak Robert Zak

Content Manager at Make Tech Easier. Enjoys Android, Windows, and tinkering with retro console emulation to breaking point.


  1. Hi,

    Thanks for this great tool it’s exactly what I was looking for!

    I am having a problem launching games though, I’m using PCSX2 and followed your steps exactly however when I launch via steam link in big picture mode I get an error for example the game The Getaway I get the message ‘Unexpected parameter ‘The”. And the same for other games with a word from the game’s title. What do I need to change?


    1. Hi Aaron,

      I’m not OP, and I am just talkin’ out of me bum, but it sounds like the shortcut breaks when there’s a space in the game’s title. You could either go into however the shortcut looks on Steam (right click game, manage shortcut, check the link) and make sure there’s quotes around the game name…or manually delete the spaces from your rom names. That one is more messy but more likely to work.

      This could all be wrong, too. Hope it helps if it’s not.

Comments are closed.