Home

Emulation vs. Real Hardware: Understanding the Challenges and Solutions

April 21, 2025

Much of the foundational insight in this section is drawn from a detailed post by the user Calamity on the eiusdemmodi forum. All credit goes to the original author for documenting these important aspects of video hardware and emulation.

Let’s face it—emulation has a bit of a bad reputation among some retro gaming fans. Some people don’t like it because it doesn’t involve the original cartridges or consoles. Others see it as tied to piracy or just not authentic” enough. That’s fine, but those opinions are more about collecting or ethics than about actually playing games, so let’s set those aside.

What’s more interesting is the argument that emulators can never recreate the same experience as real hardware. You’ll hear things like, It just doesn’t feel right,” or It’s not the same.” And in a lot of cases, they’re right—but not because emulation is doomed to be worse. It’s often just that people aren’t setting things up the right way.

And to be fair, that’s not always their fault. Emulators—especially older ones made for Windows PCs—have always struggled with one big issue: video output. The way old consoles and computers displayed graphics is very different from how modern PCs work. Most emulator developers didn’t really talk about this, and many users just assumed the image on their screen was close enough.”

But it’s not. Not even close.

Modern monitors and graphics cards weren’t made to show the low resolutions that retro systems used. This problem actually started back in the late 80s and early 90s, when PCs moved to display standards called EGA and VGA.

These were great for business use, but they also marked the end of support for the unusual, low-res formats that consoles and arcade games were built around.

Meanwhile, those systems were still outputting things like:

These resolutions were made for CRT TVs and arcade monitors, which could handle weird signal timings and pixel layouts with no problem.

That’s where the mismatch starts. When you try to run a 256×240 game on a monitor designed for 640×480 and up, things start to break down. The emulator has to upscale the image, and that often means stretching pixels, distorting the aspect ratio, or smoothing things until it looks wrong. Even with scanlines or filters, it can end up blurry or just off.

And it’s not just the resolution. There’s also the matter of refresh rate—how often the screen updates per second. CRT TVs and arcade monitors were surprisingly flexible with this, handling oddball rates like 59.94 Hz, 57 Hz, even 55 Hz. But most modern LCDs are locked to standard rates like 60 Hz or 120 Hz.

If a game was originally designed for 57.5 Hz and you force it to run at 60 Hz, you’ll get issues:

Some emulators try to mask this with frame skipping or buffering, but that usually adds input lag, which ruins the feel of fast, responsive games.

So yeah—when compared to real hardware, basic emulation often feels off.

But here’s the good news: this can actually be fixed.

Years ago, a British hobbyist figured out how to make certain ATI Radeon graphics cards output proper low-resolution signals. This led to the creation of the ArcadeVGA card, which let you connect a Windows PC directly to a CRT monitor or TV that runs at 15 kHz—just like the old systems. That was a huge step forward, even if it only supported a limited set of resolutions.

Today, things have advanced a lot. There are tools and drivers that let you customize many modern graphics cards to output any resolution and refresh rate from pretty much any classic system, think 256×224 at 59.185 Hz, or 320×240 at exactly 60.000 Hz. And a lot of these tools are free. With the right setup, your PC can act like an NES, a Mega Drive, a Neo Geo, you name it, and send out a signal that looks and behaves exactly like the original hardware.

When you run a game in its original resolution and refresh rate on a CRT monitor or TV, the results are stunning. It doesn’t just look like the real thing, it is the real thing in every way that matters visually. The game runs at the correct speed, the image has that sharp-but-soft CRT glow, and there’s no lag. Sure, there’s still a little emulation overhead, but it’s negligible if you’ve done the setup right.

So if we’re talking about recreating the experience of old games not the circuit boards or plastic shells,

Gaming Controllers

Most people today already know that you can plug in pretty much any old video game controller and use it on a PC. USB adapters are everywhere, and even Bluetooth options exist for many classic pads. But as usual, there are some catches and some setups work a lot better than others.

First, let’s break it down. If you’re using a controller from the NES, SNES, Sega Genesis, PlayStation, or similar systems, you’re in luck. These use digital inputs, meaning they just send simple on/off signals for each button. These are relatively easy to adapt to a computer. You just need a good USB adapter.

But good” is the key word here. Some adapters, especially the cheap, no-name ones introduce input lag. That’s the delay between when you press a button and when the action happens on-screen. For retro games that rely on tight timing (think Mega Man, Street Fighter II, or Sonic the Hedgehog), even a small delay can ruin the feel.

Here’s where it gets tricky:

So while USB adapters are convenient, they’re not always ideal for the most accurate input experience.

There’s another route though and it goes way back: PS/2.

Yep, that old purple round connector on some motherboards. Originally made for keyboards, the PS/2 port works in a completely different way than USB. It sends input directly to the system without the polling delays that USB introduces. If you can turn your controller into a kind of keyboard, you can take advantage of this.

That’s where devices like the Ultimarc I-PAC come in. It’s a small circuit board that converts button presses from arcade-style or retro controllers into keyboard key presses. It connects via USB or PS/2, and the latter is preferred if you want the lowest possible input lag.

With a setup like this, you can wire a digital controller directly into the I-PAC and have it behave like a super-responsive keyboard. Each button corresponds to a key, like Z” for jump or X” for fire, and it works across all emulators and games with zero lag. It’s especially popular in the arcade community, where precise controls are everything.

Of course, this method isn’t for everyone, it requires a bit of DIY work. But for those chasing the most authentic retro feel on a PC, it’s hard to beat. Whether you’re building a full arcade cabinet or just want your Genesis pad to feel snappy again, understanding how your controller connects and how input gets processed, makes a real difference.

Solving the Video Issue: Hardware Needed

To make old video games look right on a modern PC setup, the key is matching your display hardware to the original systems’ output. Most classic game consoles and arcade machines were designed for very different video standards than what PCs and modern displays use. Here’s how to fix that.

a) Get a 15 kHz RGB TV or Monitor

This is the most important part. Without a proper 15 kHz display, you won’t get the correct look or performance. Systems from the NES and Sega SG-1000 to the PlayStation 2 and Nintendo Wii all output 15.7 kHz signals. Most arcade machines did too, especially older ones. Some later arcade boards used 31 kHz or even 24 kHz signals, but those are the exception.

You need an RGB-compatible display. If you’re outside Europe, this probably means skipping consumer TVs and going for an arcade monitor, broadcast display, or 15 kHz computer monitor. Be aware that 15 kHz computer monitors are usually quite small — often no larger than 14 inches.

There is no automatic quality difference between RGB TVs, arcade monitors, and 15 kHz computer displays. It really depends on the brand and model. Arcade and pro monitors tend to offer easier geometry adjustments. Sony Trinitron models, whether TVs or PVMs, are especially valued for their image quality, easy-to-use service menus, and flexible scan support.

If you’re interested in 24 kHz or 31 kHz arcade games, aim for a broadcast or multi-sync arcade monitor. There’s a full section on monitors later that goes deeper into this.

b) Get the Proper Video Cable

You can’t just plug a PC into one of these displays without a specialized cable. Your options depend on what kind of display you’re using.

c) Get a Video Card That Supports 15 kHz Output

This is where most people get stuck. Technically, many video cards can output 15 kHz signals, but modern operating systems make it hard to access that feature directly. You need specific cards and drivers to get full control over the video modes.

ATI/AMD Radeon cards up to the HD 4000 series are your best bet. They support custom low-resolution video modes better than any other brand. Unfortunately, newer models usually don’t offer the same flexibility, and many users find themselves frustrated trying to make them work.

So: pick the right card first. Build your emulator PC around it. Don’t be afraid to buy second-hand.

Many new users assume they need a powerful modern GPU, especially if a certain emulator recommends it. But emulation relies far more on compatibility than GPU horsepower. After buying a new card, users often end up fighting with tools like Soft-15kHz or PowerStrip, trying to get a stable signal. Some manage to get a few working modes. Others just give up and buy the ArcadeVGA card from Ultimarc.

That card is a plug-and-play solution, but it isn’t ideal for every setup. We’ll go into more detail on that in its own section. For now, just remember: fewer variables means fewer headaches.

Why You Need CRT Emudriver and Its Toolset for Your ATI/AMD Radeon Card

Quick answer: CRT Emudriver, combined with one of the supported ATI Radeon cards, remains the most efficient and versatile method for creating custom video modes that match both your monitor and your emulation needs — with almost no practical limitations. While there are other ways to achieve similar results, it’s important to understand that simply outputting a 15 kHz signal is just the beginning.

Any method trying to solve the video problem needs to address three core challenges:

  1. Windows limits custom video modes:
    Accurate emulation requires hundreds of unique video modes, but Windows typically allows only 30 to 60 custom modes. The usual workaround is to load a set of generic modelines — a simplified list of popular resolutions and refresh rates. This forces many games to run in slightly off-spec modes.

  2. Each CRT has unique timing requirements:
    To get pixel-perfect geometry, each CRT needs its own set of custom modelines. Generic modeline lists use a lowest-common-denominator approach, which means your CRT is never used to its full potential. Advanced users often spend hours hand-tuning each mode for best results.

  3. Games need to launch with the correct mode:
    Configuring each emulator to use the right mode for every individual game is a huge task if done manually. Tools like AVRES and MAME Resolution Tool try to automate this, but they don’t have access to accurate modeline data, so their choices are often a best guess.

CRT Emudriver and its companion tools offer a complete solution to these problems. It’s built on a modified version of ATIs Catalyst drivers, unlocking support for 120 to 200 custom video modes (depending on the graphics card). Its toolset lets you define and fine-tune modes on the fly, with full control over screen geometry and vertical sync.

The centerpiece of this system is Video Mode Maker. It handles both modeline generation and emulator configuration. Once set up, it automatically creates optimized modelines tailored to your specific monitor and generates the corresponding .INI files for MAME games, assigning the right mode to each title.

CRT Emudriver is now closely tied to Chris Kennedy’s Switchres project, which aims to provide a cross-platform foundation for accurate CRT-based emulation. Tools like Groovy MAME and the Groovy Arcade Linux Live-CD use the same modeline logic as Video Mode Maker, though you don’t need Linux or Groovy MAME to use CRT Emudriver.

Other 15-kHz-focused applications

As discussed above, CRT Emudriver is just one of many methods that have been developed as an approach to the video issue. In fact, for the most part, the driver-based methods used by CRT Emudriver were discovered and documented by the creators of Soft-15-kHz and Winmodelines, so we just used that previous knowledge and improved the modeline generation techniques and MAME integration. Here’s a brief overview of some of those methods:

Advance MAME

A derivative build of MAME developed between 1998 and 2008. Its creator, Andrea Mazzoleni, was probably the first person to have a clear picture in his head of the video issue as a whole. Mazzoleni built an incredibly sophisticated engine upon MAMEs core to deal with low-level video hardware initialization and modeline generation, creating nearly perfect video modes for most games right out of the box. Direct video hardware management involves specific code for each chipset — a titanic effort. DOS or Linux is required to enjoy Advance MAME in its full glory. Under Windows XP, direct hardware access is restricted to device drivers, limiting Advance MAMEs special features. After version 0.107, mainline MAMEs video subsystem was rewritten, and Mazzoleni declined to continue updates. Still, many continue to use it due to its unmatched capabilities at the time.

Ultimarc Arcade VGA

Originally conceived as hardware, the Arcade VGA card was created by Andy Warne as a plug-and-play solution for connecting PCs to arcade monitors and TV screens. Based on an ATI Radeon card with modified BIOS, it outputs native 15-kHz video from boot — unlike most solutions that require the OS to load first. It includes around 30 built-in video modes tailored for emulation use. However, it supports each resolution at only one refresh rate and lacks some important ones, like ~55 Hz for Irem games. These limitations pushed advanced users to request custom mode capabilities — the original motivation behind CRT Emudriver.

The later ArcadeVGA 3000 — based on the HD-2600 — supports CRTs and LCDs, Windows XP through 7, and comes with a configuration utility called Arcade Perfect. This software allows per-game refresh and geometry tweaks via an on-screen display but does not support per-game video mode switching.

Soft-15-kHz

An earlier software solution for enabling 15-kHz modes on Windows systems using Radeon cards. It installs custom EDID entries and tweaks the driver environment, allowing a selection of standard resolutions suited for CRT displays.

Winmodelines

A configuration tool that allows users to manually define modelines for Windows systems. It operates within the Windows driver framework and is often used in conjunction with Soft-15-kHz or other display tools to fine-tune custom video output.

PowerStrip

A longstanding utility from EnTech Taiwan for advanced display timing management under Windows. PowerStrip offers real-time modeline adjustments and refresh rate control, useful for both CRT and LCD displays. While it doesn’t directly target 15-kHz output, it’s been used by enthusiasts to experiment with compatible timings.

A hardware dilemma: the extinction of analog video technology

Flat panels killed the video game star, as you may have heard. LCD and plasma technology, with their digital displays, are pretty, healthier-for-the-eyes, and, well, flat. But they also fall short in terms of pure performance, especially for gaming. Color fidelity and slow response are just the beginning of a huge list of unavoidable issues that we didn’t face with CRT technology. One key problem is that flat panels are limited to a single video mode, unlike CRTs, which can handle multiple modes with ease.

With the extinction of CRT technology (and the lack of a true replacement), analog signal standards are also being phased out. It’s becoming increasingly common to find PC video cards that don’t include VGA output. This is a concern because, without analog VGA/DVI-A/DVI-I output (much like without CRT monitors), customizing video modes might no longer be feasible, meaning emulation would be permanently compromised.