Changes

Jump to navigation Jump to search

Displays

5 bytes added, 14:30, 28 November 2023
CRT monitors
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 [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 colour 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 colour 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 colour 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>
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 colour level intensity, allowing 240p with black frame insertion or 480p with inserted scanlines to have vibrant colors colours 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.
====External links for VGA CRT====
407
edits

Navigation menu