Display FAQ

From Emulation General
Jump to: navigation, search

There are several displays you can use for emulation. Some are better than others at displaying older standard definition games.

CRT TVs[edit]

CRT (or cathode ray tube) TVs are the old kinds of TVs that older consoles were designed to output to. They typically accepted signals with a 15.7kHz scan rate under NTSC or PAL standards. They are usually preferred for gaming because of its better motion, response times, and lower input lag compared to LCD TVs. CRT TVs have scanlines which help reduce the pixelation of older games.

Shadow (slot) mask vs aperture grille

They come in several forms:

  • Shadow Mask - Most common variety of CRT TV, many variations in size and picture quality. Comes in two forms: Slot mask (shown here), and dot mask. Slot mask is more common for TVs, and dot mask for monitors.
  • Aperture Grille - Sony's patented CRT design used in their Trinitron displays, some sets were of higher quality than most standard shadow mask TVs.
  • HD CRTs - 1080i/720p displays, usually upscaled SDTV content to 480p internally, some displayed at 100Hz to reduce flicker

Features[edit]

  • Can display a wide range of resolutions up to 480i on SDTVs and 1080i on HDTVs
    • May actually force and scale to a resolution non-native to the input. HDTVs that scale EVERYTHING to 1080i aren't rare. That defeats the purpose of avoiding scaling (no input lag, native resolution, etc.), but you still get the other benefits (minus the "no input delay").
  • True black levels
  • Wide viewing angles
  • 4:3 Aspect ratio (with a few exceptions)

How to connect to a CRT TV[edit]

  • Wii would be the easiest method. Can output to 240p.
  • VGA to Composite/S-Video converter box. These are cheap but only output 480i and may introduce latency, and may have poor picture quality compared to the actual console's Composite/S-Video output.
  • Driver modifications like Soft15khz and CRT_Emudriver can allow your video card to output real 15kHz RGB through the VGA/DVI port. May need to buy or create your own specialized cables depending on the CRT you use. For CRT's that don't have RGB inputs, you can use a VGA/RGB to YPbPr transcoder (such as the Crescendo TC1500) to change the signal type to YPbPr component video without any scaling or latency, but they are very hard to find, especially on the cheap.
  • An alternative to the above is to get a SCART to Component transcoder such as a CSY-2100 clone like this one and make a VGA to SCART adapter using this schematic, making sure to bridge pins 5 and 11 on the VGA side. The clones usually need color adjustment, so pull up two NTSC test images (one on a color-calibrated display, and one on the TV), open up the transcoder, and twist the knobs with a screwdriver until you get the picture you desire. You will be able to output a 240p image with this method. Use these modelines for the console that you are going to emulate, or use lrmc to generate new ones. These modelines are RandR modelines, so if you are using Windows, use WinModelines to apply them. If using GNU/Linux or *BSD, use xrandr. If you are using GNU/Linux, make sure you use the open source graphics drivers, and not the proprietary ones, Intel iGPUs will not work below 31KHz. There is no need for any driver modifications like there is on Windows.
  • If using a PAL TV with RGB SCART (make sure it supports RGB and not just composite through SCART), use this schematic to build a VGA to SCART converter, and that is all you need to do. Keep in mind that this schematic does not apply to Japanese RGB JP-21. Use the appropriate pinout for JP-21 instead in that case, available here. It will work just the same.
  • Most CRT HDTVs have either DVI or HDMI ports which can accept as low as 31kHz (480p at 60Hz) from a PC. They do not support 120Hz to force 240p resolutions while doing this.

Recommended CRT TV Models[edit]

Sony's PVM/BVM series and NEC's XM/XP series are considered god-tier. If you cannot find those specific models, look for presentation monitors, professional monitors, or broadcast monitors from any brand. If you search for "video monitor" on craigslist, you may have luck finding one. Sony Trinitrons are pretty easy to find, and they're on the high-end of consumer grade CRTs. Sharp, Toshiba, and Phillips higher-end CRTs are pretty close in quality, so don't be afraid to pick one of those up. Test before you buy. Also, check the back and see what ports it has. If you're in North America, coax and composite (red white yellow) are the most common, but you'll get the best picture quality running your system through component (green blue red red white) ports. If component is not available, look for S-video instead. It will look slightly worse than component, but since it is on a CRT, the picture still looks good.

If you are in a PAL region or Japan, look for a TV with RGB SCART or RGB JP-21 (same connector, but different signals). Note that just because a CRT has a SCART/JP-21 port, it doesn't mean that it supports RGB. It could just be composite through a different connector. If you are in Japan, you can also look for D-Terminal on the back, which uses YPbPr instead of RGB (similar to component in other NTSC regions). Just make sure to avoid "100Hz," wide screen, "high dot pitch," or "HD CRTs," as they tend to scale or distort the image in some way like modern HDTVs, with a few exceptions. This also applies to NTSC regions (minus "100Hz"). This does not apply to video monitors, as mentioned in the paragraph above.

You could also look for a 15KHz-compatible PC monitor (see below) or an arcade monitor, although you may have to adapt the input to work with it.

External Links[edit]

CRT Monitors[edit]

CRT monitors are CRT displays that are intended to be used from a PC, typically being driven by a RGBHV signal with a 31kHz or higher scan rate through a 15-pin VGA cable.

21" Slot mask CRT TV vs 17" Dot mask CRT monitor
Comparison of resolutions on a common CRT monitor. From left to right: 240p - 480p - 960p

Features[edit]

  • All the benefits of a CRT TV besides native inputs for actual hardware and native resolutions in most cases.
  • Generally 31kHz (480p at 60Hz) horizontal frequency at minimum, unless the monitor is tri-sync (15kHz, 25kHz, 31kHz).
    • You can force 240p resolutions with 120Hz refresh rates. You can then use black frame insertion to get the effective refresh rate back down to 60hz.
    • There are also hacks, both software and hardware, to allow 15kHz output. But the monitor must also support it, and most of them aren't written for modern OSs. Careful there.
  • Larger resolutions available, often massive
    • Horizontal resolution is only limited by video bandwidth, so you can set it really high and scale output to fit, and the CRT will display it 4:3. This is useful for 240p modes where you can avoid having to have different custom resolutions for each game and not have any visible scaling issues due to individual horizontal pixels being smaller than your monitor's dot pitch.
  • Large range of vertical refresh rates supported, often 50Hz to 160Hz. It's possible to display arcade games like R-Type and others with unusual refresh rates almost exactly the same as the real cabinet did, with perfect smooth scrolling. V-sync is still needed due to dot clock granularity and the fact the emulator frames needs to be synchronized to the CRT's vertical retrace, otherwise you will get some minor static tearing.
    • Keep in mind your vertical refresh rate and vertical resolution must stay within your monitor's horizontal frequency limits, e.g. if your monitor's limits are 31kHz to 70kHz and you are trying to set a display mode for PAL games, you will find that 480p at 50Hz is not possible as that is 25kHz, you will need to increase the vertical resolution to around 576p to make it 31kHz.
  • Easy to connect to a computer
  • Rarely larger than 19" or 21"
  • 4:3 Aspect ratio (with a few exceptions, notably the FW900)
Integer scaling.png

240p/480i[edit]

Custom Resolution Utility timings

Given the many advantages that CRT monitors possess, they make ideal displays for emulation, particularly for 5th-gen games and below. However, to get the most out of them, some extra steps may be necessary. For instance, some games used interlaced modes, which without a shader results in ugly deinterlacing artifacts. Also, even at 480p, games that ran at 240p and below look blocky and pixellated, not to mention correcting the aspect ratio for games using non-square pixels results in scaling artifacts, just as on an LCD. The scaling issues can be dealt with using a superwide 240p resolution, but that requires using 120hz with black frame insertion, and games that use 480i get downsampled to 240p, making it a less than ideal solution in those cases, although it does have lower latency due lower frame times between vsync.

To correctly display games that need both 240p and 480i resolutions, the solution lies in creating a custom superwide 3840x480 modeline, combining it with a shader that scanlines 240p content and interlaces 480i content, and using both through RetroArch, essentially turning your monitor into an extremely sharp CRT TV. On Nvidia cards, the custom modeline can easily be set within your graphics card's drivers. On AMD, it requires the use of third-party software, such as Custom Resolution Utility. Simply add a detailed resolution with the exact settings shown on the picture, restart your computer, and the monitor should now be able to make use of the new modeline. As for the shader, hunterk's interlacing.cg gives you black lines that will oscillate when given an image with 400 or higher vertical resolution, emulating the behavior of 15kHz displays. There are also some shader presets that combine the interlacing shader with tvout-tweaks and image-adjustment for accurate RGB signal emulation and color controls, and also some that utilize Themaister's NTSC shader for composite/s-video emulation.

Once you have the new modeline set and have the shader in hand, open your RetroArch configuration file of choice, set the fullscreen resolution to 3840x480, aspect ratio to 8, aspect ratio index to 19, and windowed fullscreen to false. Adjust your monitor's image as necessary. It may be necessary to raise your monitor's brightness somewhat, or increase color intensity to deal with the loss of brightness from having pure black scanlines. Some monitors, such as the NEC/Mitsubishi SuperBright series, have settings that increase the monitor's brightness without compromising black level or color temperature significantly.

A template for creating a resolution config file in RetroArch can be found here (for creating per-game/per-core overrides, use this) . Setting up separate configs per display mode in the /config directory allows you to use RetroArch's config loader to change display modes from within the menu or you can launch with shortcut by setting the target to retroarch.exe --config .\config\480p.cfg --menu

In GNU/Linux or *BSD, you would use gtf and xrandr to use custom resolutions. See here.

Recommended CRT Monitors[edit]

Please add to this list if you have a specific model CRT monitor that you recommend for using with emulation.

  • Dell E771p - Very common CRT monitor. Able to boost color level intensity, allowing 240p with black frame insertion or 480p with inserted scanlines to have vibrant colors despite 50% brightness. Capable of up to 1400x1050 @60Hz with custom resolutions, but disallows 1440x1080 for some reason despite being able to display other 1080p resolutions at 60Hz.

LCD Monitors[edit]

All LCD monitors have a native resolution which all output must scale to, unlike CRTs.

120hz displays with hacks can display motion at the same level as a CRT through backlight strobing. See: Blurbusters and Dead link, please replace

There is extreme variance between panels in each section. The best of one is most likely going to be better than the worst of another.

Always value input lag on a per panel basis. Do research. TFTcentral has done tests on many monitors and is a good source of general information.

TN panels[edit]

  • Cheap prices
  • Most common for high refresh rate displays, such as 120Hz and 144Hz.
  • Viewing angles WILL distort colors. Washing them out, inverting them, etc.

IPS panels[edit]

  • Vivid colors
  • Good viewing angles
    • Though IPS glow will be far more visible and troublesome the farther you get from straight on
  • Fairly long response times (will differ between panels)
    • This causes motion blur, ghosting, and delay.
  • Some monitors can be 'overclocked' to run at higher refresh rates. Such as the Qnix QX2710, which can run at 120Hz
    • But most cannot resolve every frame of such refresh rates due to response times
  • IPS glow. A form of backlight bleed that varies with viewing angle. Affects dark areas. Generally makes IPS panels have terrible black levels.

VA panels[edit]

  • Good black levels. Some rivalling CRTs, once properly configured.
  • High contrast levels
  • Vivid colors
  • Mostly good viewing angles. Color shift varies by panel. But nothing as severe as TN.
    • Some panels may have an issue called 'black crush' which darkens the panel when viewed straightforward.
  • At least one officially supported, out of the box, 120Hz panel, the Eizo Foris FG2412. No 'overclocking' necessary.

Upscalers[edit]

http://scanlines.hazard-city.de/

External Links[edit]

  • RetroRGB - Provides lots of info on displays
  • 240p test suite - Test suite for properly configuring 240p. Designed mostly for CRTs, but will work with any monitor that supports 240p. Available as a homebrew program for several consoles.