How to Play Retro Games on a Modern Phone or TV

One of my favorite ways to spend my free time is watching old movies. I love catching up on classics on a big OLED screen and immersing myself in the history of my favorite art form. Unfortunately, this is more difficult with video games. While finding an old movie is usually as easy as streaming it or renting it digitally, old video games are available on a variety of consoles, and re-releases can’t always be counted on to make them available on modern systems.
Luckily, there are still options for those looking for them. Yes, you can track down a vintage system and connect it to a modern screen with an adapter, but you can also use the capabilities of modern devices to “emulate” these games in virtual environments, often with enhancements—and if done correctly, it’s all perfectly legal.
What is video game emulation?
Emulation is a vast rabbit hole, and you can dive into it as deeply as you like. I’ve been using it for decades and am still learning new things. But there are a few basics you should know to get started, including how it works, its legal status, the downsides of playing on non-real hardware, and the benefits it offers beyond mere convenience.
Essentially, emulation uses the power of modern machines to create virtual environments that are close enough to real hardware that files developed for it believe they’re running on real hardware and run accordingly. This typically means emulators only appear one or two generations after a console’s official release, but there are now emulators for everything from the Nintendo Entertainment System to the Nintendo Switch (which runs on older hardware than you might think).
Of course, you might expect Nintendo to be upset about this, but the problem is, there’s little the company can do about it (other than try to intimidate emulator developers). A long-standing court ruling stated that, as long as emulators don’t distribute copyrighted software, they’re allowed to write their own code to emulate official hardware as much as they want. This means you’ll need to provide your own games for your emulators, and in some cases, BIOS (or operating system) files. To avoid breaking the law, most emulator manuals won’t tell you how to do this, but there is at least one method that’s perfectly acceptable.
It turns out that American law allows you to create your own backup copies of games you own, as long as you don’t distribute them. However, there are many legal tools that can help you copy game files from your cartridges and discs, some of which I describe here . Some emulators are even so advanced that they can play your actual discs simply by inserting them into your computer’s disc drive.
However, even if everything is fair, emulation has several drawbacks compared to playing on real hardware. The biggest issue you’ll notice is accuracy, as some games may have graphical or audio errors. Input lag is also a common complaint, as emulators often require additional time to register button presses, as they need to both read them and transmit them through your software. Finally, some games may not run on emulators at all, especially those with unusual requirements. For example, the original Xbox is notoriously difficult to emulate.
On the other hand, emulation has advantages that real hardware can’t replicate, primarily due to the additional power of your modern device. Emulated games often run smoother than on real hardware, achieving higher frame rates. You can also usually display your games at a higher resolution than originally intended, essentially playing in HD. And most importantly, for complex games or flexible play sessions, you can use savegames, which allow you to quickly save your current position in the game to a file and load it on demand. This, in turn, allows you to save the game at any time, regardless of the built-in save system. This is ideal if you only have a few minutes to play or if you’re about to take on a challenging boss in a challenging retro game and don’t want to replay the entire level if you make a mistake (we don’t blame you). Since savegames essentially revert your emulator back in time, they can cause instability, so it’s recommended to use them in addition to more traditional savegames, rather than as a complete replacement. Emulators for more modern, more difficult to run HD systems may also not support saving game states.
Still, these improvements are enough that I often prefer playing retro games through emulation, even if I have real hardware. And while some of these improvements are available in official emulation—for example, saves are included in Nintendo Switch Online—not all of them are. I haven’t even touched on widescreen hacks that let you play old 3D games in a more modern aspect ratio without video stretching, or HD texture packs. That’s why, if you’re willing to put in a little effort, unofficial emulators are worth a try.
What you need to start imitating
Emulator developers are resourceful and have had plenty of time to perfect their work, so most modern devices are capable of emulating retro games to some degree. It’s become a joke that Doom runs on almost anything, including a pregnancy test . But realistically, you’ll probably need a few things before getting started.
If you’re playing on a laptop or desktop computer connected to a monitor, you’ll likely need a controller. Most emulators support mouse and keyboard controls if you truly can’t use a controller, but using a controller will significantly improve the experience on older consoles. Otherwise, it’ll likely be sufficient. I have a desktop PC that’s almost 10 years old, and it can still emulate PS2 and GameCube-era games at full speed, upscaling them. Emulation becomes more demanding after that, but for retro games, you probably won’t need to upgrade your computer.
If you want to play on your TV, you’ll have to do a little more research on your shopping list. Besides a controller, you’ll also need a computer to emulate games, and while you can bring a laptop or desktop PC into the living room, that’s often not the most convenient solution. Instead, I suggest getting either a Steam Deck with a docking station or a Raspberry Pi .
The first option is a bit more expensive and had issues with RAM availability during the RAM crisis , but it’s also compact, quite powerful in terms of emulation, easily connects to a TV via a dock, and can run PC games natively. With the right setup for Steam Deck emulation, you can essentially turn it into your own DIY Nintendo Switch, but for all your consoles.
The latter option, meanwhile, is much cheaper (though also inflated by the RAM crisis) and smaller, but requires some knowledge to set up and may struggle to emulate systems released after the PS1. If you choose this route, a better option is likely to be buying a Raspberry Pi kit , as it includes a case, cables, drives, and often a fan to get you started. These can sometimes be found cheaper than a separate Raspberry Pi motherboard.
But again, the choice of devices for emulation is virtually limitless. Emulation is also possible on a streaming stick or console . Generally, if a device has a motherboard and can display a video signal, people can usually find a way to play on it. Therefore, emulation on mobile devices is also worth considering. Today, emulation is possible on both iPhones and Android, and there are many portable gaming consoles that essentially embed controllers into the hardware of an Android phone, providing an experience similar to a DS or PSP. This is a great way to play handheld, using touch controls, a Bluetooth controller, or built-in controls. And if you purchase a USB-C dock, you can connect these devices to a larger screen for playing at home. You can even buy an inexpensive portable console running Linux to get a Raspberry Pi-like experience on the go. Read more about portable emulation here .
Which emulators should you choose and how to set them up?
Now it’s time to install emulators, of which there are a wide variety. I’ve compiled a list of apps you’ll likely use to emulate games, depending on the platforms you’re interested in, and then I’ll tell you how to install them:
-
Retroarch : An application with multiple emulator “cores” capable of running games from most systems back to the PS1 era, including the Super Nintendo and Sega Genesis.
-
Duckstation : A standalone PS1 emulation application that offers improved stability and graphics capabilities compared to Retroarch.
-
Mupen64Plus : A standalone Nintendo 64 emulation application that features improved stability and graphics capabilities compared to Retroarch.
-
Flycast : A standalone Sega Dreamcast emulator with upscaled graphics and widescreen support.
-
MelonDS : A standalone Nintendo DS emulator with community-developed forks that can run on two different displays for a more authentic gaming experience.
-
Azahar : A standalone Nintendo 3DS emulator with community-developed forks, capable of running on two different displays for a more authentic gaming experience. Supports custom graphics drivers on mobile devices.
-
PPSSPP : A standalone PSP emulator with a carefully designed user interface reminiscent of the original console.
-
Dolphin : A standalone GameCube and Wii emulator with high stability, support for custom mobile graphics drivers, image scaling, and the ability to use motion controls. Generally preferable to PS2 or Xbox emulation if you’re playing a multiplatform game.
-
PCSX2 : A standalone PS2 emulator with graphics scaling support. Best suited for PS2 exclusives. Not available on mobile devices.
-
NetherSX2 : A standalone PS2 emulator for mobile devices. It shares many of the same features as Dolphin, but is less stable and lacks support for motion controls and custom drivers.
-
Cemu : A standalone Wii U emulator with support for custom mobile graphics drivers and scaled graphics. Saving game states is not supported. Requires a high-performance computer.
-
RPCS3 : A standalone PS3 emulator with support for scaled graphics, custom mobile graphics drivers, and game saves. Requires a high-performance computer.
-
Eden : A standalone Nintendo Switch emulator with support for scaled graphics and custom graphics drivers on mobile devices. No save state support. Requires a powerful computer.
Phew, that’s a lot. On the plus side, most of these emulators are available for Windows, Mac, Linux, and Android, though iOS users have slightly fewer options, as Apple’s restrictions on certain programming methods mean that more expensive devices like the GameCube and newer ones are difficult to run on Apple phones. Additionally, iOS offers several potentially more user-friendly options for older systems, such as Delta , which comes with nice-looking overlays for touchscreen controls built in.
Now, you could install these apps one by one, specifying the path to the game files (which usually happens during the installation process), and play them by launching the desired emulator and selecting a game from the list. But not only is this slow and inconvenient, it’s also less visually appealing and less like using a real retro console. To solve this problem, we have installers and interfaces.
Emulator installers
In this case, installers are programs that will help you set up all your emulators in one fell swoop, or sort your games by system or genre and launch the appropriate emulator when you select a game.
As for installers, you have several options. My favorite is Emudeck , which, despite being named after Steam Deck, walks you through a simple installation wizard that will install any emulator you want, regardless of whether you’re using SteamOS, Linux, or Windows. An Android version is also in development, and you can get early access to it if you subscribe to the development team’s Patreon.
Alternatively, you can use Retrodeck . This is a Linux-only tool, but some users prefer it to Emudeck due to its more convenient hotkey settings and less error-prone (though potentially slower) update process. Nicedeck is another alternative that aims to fill a middle ground between Emudeck and Retrodeck, and conveniently, it’s the only one that also works on Mac.
As someone who has manually installed numerous Android emulators one by one, I highly recommend using an installer to automate this process—especially since many Android emulators require manual installation, which will become more difficult starting next year . An installer also usually helps you configure settings, such as the desired aspect ratio and scaling options for each system you want to run, saving you the tedious task of going through the settings menu of each individual emulator.
But just because your emulators are installed doesn’t mean you’re done. Instead of switching between emulator apps and scrolling through often-inconvenient built-in menus, let’s gather all your games in one convenient and easy-to-use place.
Emulator interfaces
A frontend is an application that sorts your games by system or by custom collections you’ve created, such as genre. You select a game from one of the many lists, and the frontend instructs the appropriate emulator to launch it. Then, when you’re done playing, the emulator returns you to the frontend. This is a much more intuitive and console-like interface, and people have created numerous themes to make it as beautiful as the official console menus. Many frontends even have built-in “scrapers” that can retrieve and display game box art next to your games.
The most common and reliable option is ES-DE , or Emulation Station Desktop Edition. I personally use it, and it comes bundled with installers like Emudeck and Retrodeck. It has the most available settings, but can be a bit slow to load. Also, while it’s free for Windows, Mac, and Linux, the Android app requires a small one-time donation via Patreon.
Desktop alternatives to ES-DE are rare, but options likeLaunchBox may be preferable for some users. Other frontend apps are more common on Android, as ES-DE took some time to appear on Android, and some users prefer a more playful interface on mobile devices. Popular free options include Daijisho and Beacon , though I’m particularly interested inCocoon , which is modeled after the Nintendo 3DS menu and has built-in dual-screen support.
If you find setup too complex, you can use Batocera . It’s a Linux application that essentially includes pre-configured emulators fora variety of systems, as well as a modified version of Emulation Station. Essentially, you install it on a compatible device and boot it separately from the main operating system, so everything is in its own, isolated space. While this does limit its capabilities somewhat, overall, the application is plug-and-play. You can also run Batocera from a USB drive or SD card if you don’t want to install it on your device’s internal storage.
Choosing and installing emulators and interfaces for different systems and devices is a topic for a whole series of articles, but the community is friendly and does everything possible to make emulation simple and accessible to as many people as possible. The programs mentioned above should be enough to get you started, but if you have any further questions, experts like Retro Game Corps and subreddits liker/emulation are always ready to help.
How to Make Your Games Look Like Old Games (or in HD)
When emulating a game, you have three options: you can use the native emulation output, which by default typically simulates the console’s native resolution but may not look entirely accurate depending on the screen you’re playing on; you can increase the resolution for a more HD image and even apply fan-made texture packs to make certain games even sharper; or you can enable a CRT monitor filter to try to achieve a more retro effect and make pixel art or low-poly models a little smoother. Honestly, the list is endless. You can combine the various parameters of these approaches as you see fit, and Retroarch alone has hundreds of built-in filters and shaders (parameters vary from emulator to emulator).
Improving the appearance of emulated 3D games.
With 3D games, the idea is to try to achieve a more modern gaming experience. Widescreen hacks can be a good start. These expand the aspect ratio to 16:9 and then make adjustments to the emulation so that the screen displays more of the game environment, rather than simply stretching the standard 4:3 image. This doesn’t work in every game and can disrupt the design in some ( Resident Evil has very targeted camera angles), but it’s often worth a try, especially in games where situational awareness is important, such as platformers.
HD texture packs, on the other hand, help improve the rendering of low-quality HUD elements or 2D models (still quite common in retro 3D games) that wouldn’t be rendered with upscaling. They need to be developed for each game individually, so you’ll have to search for them, but a popular example is Henriko Magnifico’s 4K Zelda texture packs . Personally, I think they can sometimes clash too much with the developer’s intended art style, but some people love them.
Improving the appearance of emulated 2D games.
In 2D games, I try to make the game look like it’s being played on an old TV, and it’s not just for atmosphere. Pixel graphics were designed with CRT TVs in mind, which smoothed and blurred sharp edges to make the pixels look more hand-drawn (here’s a good example ). This effect is lost when using simply emulated video on a modern TV, but it can be largely restored with the right filters.
This is far from a solved problem, but my current favorite option is the zfast-crt.slangp shader in Retroarch (you can find it in the quick menu under “Shaders “). It’s a subtle effect that, in my opinion, is much more accurate than the CRT filters often included in official retro game compilations, and it will work on any device with Retroarch installed. What’s especially great is that since it’s included with Retroarch, it will also work on any system supported by Retroarch, including most retro consoles that play 2D games.
But CRT monitors offer an additional benefit beyond improved pixel art quality. Due to the way they scan images, they are highly resistant to motion blur. If you have a device with a 120Hz screen, you can simulate this using a technique called black frame insertion. This inserts a single black frame into every other frame of the video output, breaking up the image and helping your eyes recover. While this will slow down gameplay on a standard 60Hz screen, a 120Hz screen will allow you to use black frame insertion while maintaining 60 frames per second. This feature is built into a toggle in Retroarch’s Settings > Video > Sync page, but frankly, I found this implementation to be accompanied by quite a bit of flickering.
Instead, I prefer the crt-beam-simulator.slangp shader, developed by the folks at Blur Busters , which has a more subtle effect, more reminiscent of the old TVs I remember from back then. It requires a few extra steps to run in Retroarch, but fortunately, Retro Game Corps has a great video detailing how to customize it and, if desired, combine it with zfast-crt.slangp.
With tools like these, it’s clear that interest in playing games from old consoles isn’t going away anytime soon, even if it’s more difficult than finding an old movie on Netflix. Whether you’re using a PC, Mac, Steam Deck, or a mobile device, you already have plenty of options, even as hardware prices rise. In my opinion, the future of retro gaming looks promising.