Difference between revisions of "Displays"

From Emulation General Wiki
Jump to navigation Jump to search
(Recommended CRT TV Models)
m (WebMint moved page Display FAQ to Displays)
(40 intermediate revisions by 21 users not shown)
Line 1: Line 1:
 
There are several displays you can use for emulation. Some are better than others at displaying older standard definition games.
 
There are several displays you can use for emulation. Some are better than others at displaying older standard definition games.
  
This FAQ is very work in progress. Please expand upon it.
 
 
==CRT TVs==
 
==CRT TVs==
 
'''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.
 
'''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.
  
[[File:Slot mask vs aperture grille.jpeg|thumb|350px|right|Shadow (slot) mask vs aperture grille]]
+
[[File:Slot mask vs aperture grille.jpeg|thumb|300px|right|Shadow (slot) mask vs aperture grille]]
  
 
They come in several forms:
 
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.
+
*Shadow Mask - The 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 the 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.
 
*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
 
*HD CRTs - 1080i/720p displays, usually upscaled SDTV content to 480p internally, some displayed at 100Hz to reduce flicker
Line 17: Line 16:
 
**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").
 
**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").
  
*No [https://en.wikipedia.org/wiki/Input_lag input delay]
+
*No [[wikipedia:Input_lag|input delay]]
  
*Very fast [https://en.wikipedia.org/wiki/Response_time_%28technology%29 response times]. Often referred to as phosphor delay.
+
*Very fast [[wikipedia:Response_time_%28technology%29|response times]]. Often referred to as phosphor delay.
  
 
*True black levels
 
*True black levels
Line 30: Line 29:
  
 
*Wii would be the easiest method. Can output to 240p.
 
*Wii would be the easiest method. Can output to 240p.
 +
 +
* Raspberry, RetroTINK or PI2SCART method.
  
 
*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.
 
*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.
Line 35: Line 36:
 
*Driver modifications like [http://wiki.arcadecontrols.com/wiki/Soft-15khz Soft15khz] and [[GroovyMAME|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 [http://www.curtpalme.com/TC1500.shtm 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.
 
*Driver modifications like [http://wiki.arcadecontrols.com/wiki/Soft-15khz Soft15khz] and [[GroovyMAME|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 [http://www.curtpalme.com/TC1500.shtm 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 such as [http://www.ebay.com/itm/NEW-SCART-RGB-to-YUV-Component-Video-Converter-Scaler-/221156873851?hash=item337dfa167b this one] and make a VGA to SCART adapter using [http://www.nexusuk.org/projects/vga2scart/circuit 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 [http://geocities.ws/podernixie/htpc/modes-en.html 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. There is no need for any driver modifications like there is on Windows.
+
*An alternative to the above is to get a SCART to Component transcoder such as a CSY-2100 clone like [http://www.ebay.com/itm/NEW-SCART-RGB-to-YUV-Component-Video-Converter-Scaler-/221156873851?hash=item337dfa167b this one] and make a VGA to SCART adapter using [http://www.nexusuk.org/projects/vga2scart/circuit 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 [http://geocities.ws/podernixie/htpc/modes-en.html 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, some Intel iGPUs will work below 31KHz with the open source GNU/Linux driver, but even if they do, they do not support low dot clocks or interlaced resolutions. 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 [http://www.nexusuk.org/projects/vga2scart/circuit 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 [http://www.gamesx.com/wiki/doku.php?id=av:scart2rgb here]. It will work just the same.
+
*If using a PAL TV with RGB SCART (make sure it supports RGB and not just composite through SCART), use [http://www.nexusuk.org/projects/vga2scart/circuit 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 [http://www.gamesx.com/wiki/doku.php?id=av:scart2rgb here]. It will work just the same. You can also buy a UMSA adapter if building your own converter is not an option.
  
*Most CRT HDTVs have either DVI or HDMI ports which can accept as low as 30kHz (480p at 60Hz) from a PC. They do not support 120Hz to force 240p resolutions while doing this.
+
*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====
+
====Recommended CRT TV models====
Sony's PV/BV series are considered god-tier. Sony [https://en.wikipedia.org/wiki/Trinitron 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 [https://en.wikipedia.org/wiki/S-video S-video] instead. It will look slightly worse than component, but since it is on a CRT, the picture still looks good.
+
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 [[wikipedia:Trinitron|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. Make sure to test it  before you buy and also check the back to see what ports it has. If you're in North America, coax and composite (red, white, and yellow ports) are the most common, but you'll get the best picture quality running your system through component ports (red, green, and blue video ports with red and white ports for audio). If a component is not available, look for [[wikipedia:S-video|S-video]] instead. It will look slightly worse than component, but since it is on a CRT, the picture will still look 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 S-Video or composite through a different connector.
+
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 the component cable in other NTSC regions). Just make sure to avoid "100Hz," widescreen (note: some European widescreen CRTs still can display native 15KHz, in which case, it is a good one to pick up), "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.
  
NEC's XM29 is considered equally as good as the Sony PVM/BVM, if not better, as it is bigger. It may be more difficult to find depending on the area you are in.
+
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====
+
====External links====
 
*[http://pastebin.com/1Ri5TS3x /vr/ CRT pastebin (WIP)]
 
*[http://pastebin.com/1Ri5TS3x /vr/ CRT pastebin (WIP)]
  
==CRT Monitors==
+
==CRT monitors==
'''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.
+
'''CRT monitors''' are CRT displays that are intended to be used from a PC, typically being driven by an RGBHV signal with a 31kHz or higher scan rate through a 15-pin VGA cable.
  
[[File:Slot_mask_vs_Dot_mask.jpeg|thumb|350px|right|21" Slot mask CRT TV vs 17" Dot mask CRT monitor]]
+
[[File:Slot_mask_vs_Dot_mask.jpeg|thumb|300px|right|21" Slot mask CRT TV vs 17" Dot mask CRT monitor]]
 
[[File:CRT_resolutions.jpg|thumb|250px|right|Comparison of resolutions on a common CRT monitor. From left to right: 240p - 480p - 960p]]
 
[[File:CRT_resolutions.jpg|thumb|250px|right|Comparison of resolutions on a common CRT monitor. From left to right: 240p - 480p - 960p]]
  
 
====Features====
 
====Features====
  
*All the benefits of a CRT TV besides native inputs for actual hardware
+
*All the benefits of a CRT TV besides native inputs for actual hardware and native resolutions in most cases.
  
*Generally 30kHz (480p at 60Hz) horizontal frequency at minimum, unless the monitor is tri-sync (15kHz, 25kHz, 31kHz).
+
*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.
 
**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.
+
**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
 
*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.
 
**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.  
+
*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 need 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 30kHz 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 30kHz.
+
**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
 
*Easy to connect to a computer
Line 79: Line 80:
 
[[File:Integer_scaling.png|thumb|250px|right]]
 
[[File:Integer_scaling.png|thumb|250px|right]]
  
====240p/480i Emulation====
+
====240p/480i====
  
 
[[File:CRU.png|thumb|250px|right|Custom Resolution Utility timings]]
 
[[File:CRU.png|thumb|250px|right|Custom Resolution Utility timings]]
Line 87: Line 88:
 
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 [http://www.monitortests.com/cru-1.1.2.zip 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 [https://github.com/libretro/common-shaders/blob/master/misc/interlacing.cg 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 [https://github.com/libretro/common-shaders/tree/master/cgp/tvout%2Binterlacing 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.
 
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 [http://www.monitortests.com/cru-1.1.2.zip 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 [https://github.com/libretro/common-shaders/blob/master/misc/interlacing.cg 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 [https://github.com/libretro/common-shaders/tree/master/cgp/tvout%2Binterlacing 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, 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.
+
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 [https://gist.github.com/Monroe88/dbd3e01252afa5c50690 here] (for creating per-game/per-core overrides, use [https://gist.github.com/Monroe88/87f86d427d6319a3eb15 this]) . Setting up separate configs per display mode in the <code>/config</code> 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 <code>retroarch.exe --config .\config\480p.cfg --menu</code>
  
A template for creating a resolution config file in RetroArch can be found [https://gist.github.com/Monroe88/dbd3e01252afa5c50690 here]. Setting up separate configs per display mode in the <code>/config</code> 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 <code>retroarch.exe --config .\config\480p.cfg --menu</code>
+
In GNU/Linux or *BSD, you would use gtf and xrandr to use custom resolutions. [https://wiki.archlinux.org/index.php/Xrandr#Adding_undetected_resolutions See here].
  
====Recommended CRT Monitors====
+
====Recommended CRT monitors====
 
Please add to this list if you have a specific model CRT monitor that you recommend for using with emulation.
 
Please add to this list if you have a specific model CRT monitor that you recommend for using with emulation.
  
 
*'''[http://www.cnet.com/products/monitor-dell-e771p-17-16-vis-grey-crt-monitor/specs/ 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.
 
*'''[http://www.cnet.com/products/monitor-dell-e771p-17-16-vis-grey-crt-monitor/specs/ 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==
==LCD Monitors==
 
 
All LCD monitors have a native resolution which all output must scale to, unlike CRTs.
 
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: [http://www.blurbusters.com/ Blurbusters] and [http://www.techngaming.com/home/guide/tips/updated-eliminate-motion-blur-while-gaming-with-nvidia-lightboost-r485 Dead link, please replace]
+
120hz displays with hacks can display motion at the same level as a CRT through backlight strobing. See: [http://www.blurbusters.com/ Blurbusters] and [https://web.archive.org/web/20130514051506/http://www.techngaming.com/home/guide/tips/updated-eliminate-motion-blur-while-gaming-with-nvidia-lightboost-r485 techngaming]
  
 
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.
 
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.
Line 107: Line 109:
  
 
====TN panels====
 
====TN panels====
*Fast [https://en.wikipedia.org/wiki/Response_time_%28technology%29 response times]
+
*Fast [[wikipedia:Response_time_%28technology%29|response times]]
  
 
*Cheap prices
 
*Cheap prices
Line 121: Line 123:
 
**Though IPS glow will be far more visible and troublesome the farther you get from straight on
 
**Though IPS glow will be far more visible and troublesome the farther you get from straight on
  
*Fairly long [https://en.wikipedia.org/wiki/Response_time_%28technology%29 response times] (will differ between panels)
+
*Fairly long [[wikipedia:Response_time_%28technology%29|response times]] (will differ between panels)
 
**This causes motion blur, ghosting, and delay.
 
**This causes motion blur, ghosting, and delay.
  
 
*Some monitors can be 'overclocked' to run at higher refresh rates. Such as the [http://www.tftcentral.co.uk/reviews/qnix_qx2710.htm Qnix QX2710], which can run at 120Hz
 
*Some monitors can be 'overclocked' to run at higher refresh rates. Such as the [http://www.tftcentral.co.uk/reviews/qnix_qx2710.htm Qnix QX2710], which can run at 120Hz
**But most cannot resolve every frame of such refresh rates due to [https://en.wikipedia.org/wiki/Response_time_%28technology%29 response times]
+
**But most cannot resolve every frame of such refresh rates due to [[wikipedia:Response_time_%28technology%29|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.
 
*IPS glow. A form of backlight bleed that varies with viewing angle. Affects dark areas. Generally makes IPS panels have terrible black levels.
Line 136: Line 138:
 
*Vivid colors
 
*Vivid colors
  
*Mostly good viewing angles. Color shift varies by panel. But nothing as severe as TN.
+
*Mostly good viewing angles. Color shift varies by a panel. But nothing as severe as TN.
 
**Some panels may have an issue called 'black crush' which darkens the panel when viewed straightforward.
 
**Some panels may have an issue called 'black crush' which darkens the panel when viewed straightforward.
  
*Generally mid range [https://en.wikipedia.org/wiki/Response_time_%28technology%29 response times] (will differ between panels).
+
*Generally mid-range [[wikipedia:Response_time_%28technology%29|response times]] (will differ between panels).
  
 
*At least one officially supported, out of the box, 120Hz panel, the [http://www.tftcentral.co.uk/reviews/eizo_fg2421.htm Eizo Foris FG2412]. No 'overclocking' necessary.
 
*At least one officially supported, out of the box, 120Hz panel, the [http://www.tftcentral.co.uk/reviews/eizo_fg2421.htm Eizo Foris FG2412]. No 'overclocking' necessary.
Line 146: Line 148:
 
http://scanlines.hazard-city.de/
 
http://scanlines.hazard-city.de/
  
 
+
==External links==
==External Links==
 
 
*[http://retrorgb.com RetroRGB] - Provides lots of info on displays<br>
 
*[http://retrorgb.com RetroRGB] - Provides lots of info on displays<br>
 
*[http://junkerhq.net/xrgb/index.php/240p_test_suite 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.
 
*[http://junkerhq.net/xrgb/index.php/240p_test_suite 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.

Revision as of 15:44, 3 April 2022

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

CRT TVs

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 - The 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 the 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

  • 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

  • Wii would be the easiest method. Can output to 240p.
  • Raspberry, RetroTINK or PI2SCART method.
  • 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, some Intel iGPUs will work below 31KHz with the open source GNU/Linux driver, but even if they do, they do not support low dot clocks or interlaced resolutions. 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. You can also buy a UMSA adapter if building your own converter is not an option.
  • 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

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. Make sure to test it before you buy and also check the back to see what ports it has. If you're in North America, coax and composite (red, white, and yellow ports) are the most common, but you'll get the best picture quality running your system through component ports (red, green, and blue video ports with red and white ports for audio). If a 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 will still look 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 the component cable in other NTSC regions). Just make sure to avoid "100Hz," widescreen (note: some European widescreen CRTs still can display native 15KHz, in which case, it is a good one to pick up), "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

CRT monitors

CRT monitors are CRT displays that are intended to be used from a PC, typically being driven by an 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

  • 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 need 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

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

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

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 techngaming

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

  • 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

  • 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

  • Good black levels. Some rivalling CRTs, once properly configured.
  • High contrast levels
  • Vivid colors
  • Mostly good viewing angles. Color shift varies by a 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

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

External links

  • 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.