Pixel Perfect

readme.txt

16bits, scanlines and cathode rays. Simple technologies that offered action packed games without long tutorials. Retro games are still popular, but can they be combined with modern features like high definition resolution and 60 frames per second super smooth gameplay? And is it possible to record or even stream them in the quality that they deserve? With the right knowledge this is all possible.

This page contains the (not so) secret information on how retro consoles work and how you can enjoy them with modern TVs. While describing how old technology works with different cable types and how it can be adapted to play with new technology, it will give you an insight on 240p, RGB, low-latency gaming and you might even grasp a glimpse of the holy grail of pixel perfect videogame capture.

The focus of this site lies on capturing gameplay and will mention all the basics that you should at least have heard of it you want to record footage. If you're already using RGB cables you can skip ahead to the middle section of this page, which deals with two of the best solutions for capturing and playing retro games. Namely the two Micomsoft products that go by the names SC-500N1 and XRGB-mini Framemeister. If you own one of these devices or something similar you can check the in depth guide that explain how to configure the software to squeeze the best results out of them.

You can also read this site as separate chapters.

Press start to record 3.441.213 pixels per second!

Shortcut to the XRGB-mini Framemeister


You might know me as blizzz on the shmups forum or the SDA tech support. In fact most of the information on this page comes from these two forums and I want to thank every member that contributed to it. I've been a gamer since I can think, starting with vague memories of my brother's C64 and the NES. The first console I owned was a Gameboy with Tetris and I loved to play on my brother's SNES. To this day I love retro consoles and still own most of my old hardware, but also a lot of imported stuff that I got over the last couple years.

Gaming on a CRT

crt Shooting three electron beams through a vaccum at a phosphor screen at around 10⁷ m/s and deflecting them with powerful magnets while they produce a small amount of X-rays as a side product. Sounds like science-fiction, but that was the way we played games back in the era of 15kHz consoles. And don't worry, the X-rays only have low energy and are filtered by the case.

Standard CRTs could only display an analogue 240p or 480i signal. Aside from the low resolution there were also problems with the geometry, that can make it hard to go back if you're used to perfectly straight lines on an LCD display. But back in the '90s that was how videos and video games looked like and you didn't even notice it, because you were too focused on the games. The games appeared very smooth, because most of the 2D games ran at 60fps as opposed to the 30fps you get with most games on modern consoles like the PS4.

One of the huge advantages of simple CRTs is that there is no delay added to the picture. You press a button, Mario jumps. Easy as that. The only delay you would get was the time it took the electron rays to reach the bottom of the screen, but that was only 16ms on a 60Hz TV. If you live in Europe you might remember that CRTs only ran at 50Hz here, but to compensate that at a slightly higher resolution. Most PAL games didn't make use of the extra resolution and displayed black bars on the top and bottom. To make it worse, many games were simply slowed down from 60fps to 50fps, often even with lower pitched music. Playing PAL games was, and still is a torture, especially because basically all PAL TVs could also display 60Hz without problems. But if you have access to proper 60Hz NTSC consoles then gaming on a CRT can be amazing.


Composite

composite If you got your brand new NES or SNES back in the day you had to figure out how to connect it to the TV. The normal TV programs reached your screen through a simple coax cable that transports both the video and audio mixed together. That also works for consoles! If you connect the RF output of your console to a coax adapter or switch you could play your games by tuning into channel 3, 4 or 89 in my case. But because all the information is transported in one wire the quality was as low as it could get.

A simple upgrade to RF is composite, which is still the most common method to connect retro consoles. Composite uses three cables with RCA connectors. One cable for the video (yellow plug) and one cable for each of the audio channels (white and red for stereo). This improved the quality quite a bit and gets rid of most ghosting and audio hum. To get acceptable quality out of a composite signal you need a 3D comb filter. If there is only a cheap filter in your TV or capture device you will get moving distortions on the sides of objects. But even with the best display it will still look blurry and the colors are slightly off. Some developers took this into account and changed the colors of the game so that they would come out correctly on the composite video. There is also a bunch of games that use the blurring effect to their advantage. Overall composite is not a bad way to play retro games, but since there are better options readily available it shouldn't be used.

S-Video

s-video S-Video is a further improvement over composite. The image signal is transported over two wires, one for the black and white image and one for the color information. It is sometimes also called Y/C. Y is the luma signal which carries the brightness and sync information and C is the chroma signal which carries both the hue and color saturation. The result is a sharper picture with more accurate colors, but there is still some color bleeding.

As a European gamer you will probably never have used S-Video, but in America and Japan it was quite common. Some PAL TVs will support S-Video with an adapter on one of their SCART inputs, so check your manual if you want to use it.

RGB

rgb Instead of S-Video Europe got glorious RGB SCART which combines high quality video and audio into a single plug. The 21 pin SCART plug used for RGB video can also be used to transfer composite and S-Video signals, so make sure that you buy a SCART cable that is actually wired for RGB. An adapter with three RCA inputs won't magically transform composite video into RGB. RGB uses 4 wires to transfer the three main colors red, green and blue and also the sync information seperately. The sync information tells your TV where a frame starts and ends and is needed to display the video. Usually composite video is used as the sync signal (called sync on composite) since it carries both the video and sync information. In case of RGB, your TV will use the color information from the RGB lines and take only the sync information from the composite video. There are also cables that transmit the sync information without the video part of composite. This type of sync is called composite sync since it combines horizontal and vertical sync, but don't confuse it with composite video. It is sometimes also referred to as clean sync.

The resulting image is as sharp as it gets and the colors are as close to the original as your monitor can handle. Using RGB could respark your love for CRTs. If you want to capture your games or play on a bigger LCD you should definitely invest in RGB cables. If you've got a PAL TV that displays NTSC consoles in black and white you can use RGB cables to get a picture with the correct colors.

RGB video may sound similar to component (or YPbPr), but it is not the same. Like S-Video Component separates the luma information (b/w image + sync) and chroma (color) information, but in the case of component it uses two cables for the color information. If you have a CRT TV that has a component input you can get an active RGB to component converter and not lose much of the quality. Professional monitors like the Sony PVM and BVM series use BNC plugs for their RGB input, but the signal is the same. If you're using such a monitor you can get a simple adapter with a female SCART input and BNC outputs. Some professional monitors require composite sync and will not work with composite video as sync. For these you will either need a cable that takes (clean) composite sync from the console, or an active adapter that strips the video information from the composite signal. RGB on retro consoles is usually limited to 240p and 480i, but with more modern cable standards like VGA and DVI you can also transfer HD videos with analogue RGB. The RGB color system is also used digitally in HDMI, DisplayPort and basically every monitor in existence.

RGB Output on Retro Consoles

Most retro consoles support RGB output out of the box. Examples for this are the Super Nintendo, SEGA Genesis and Saturn and the Playstation 1 & 2. Other systems like the N64 or PC Engine can output RGB with a very simple mod and there are also more extensive RGB mods for consoles like the NES. Also many modern consoles like the Nintendo Wii or the PS3 support RGB SCART, but for these consoles you should stick with HDMI or component cables since you can get 480p or higher resolutions only with these cables.

You can find more information about specific consoles on RetroRGB.com.

SCART

SCART was the standard connection type you would find on a PAL CRT TV and most modern LCD TVs in Europe still have a SCART input. It was so common that even TVs without seperate composite jacks had one or two SCART inputs. SCART cables can transport composite video, S-Video, RGB and audio. Composite was accepted on basically all SCART inputs, but RGB was often only available on one of the SCART inputs. Higher end TVs also supported S-Video on one of their SCART inputs, often the one that didn't support RGB. The SCART plug is a lot bigger than the other plugs, but this comes with the benefit that you don't need additional cables for audio. Another advantage of SCART is that the plug is spacy enough to house additional components like resistors, capacitors or even small circuitry.

There is also a lot of AV equipment that uses the SCART connector, so you shouldn't have problem finding a switch for all of your consoles. There are even projects by forum users to create and sell new SCART switches like the gscartsw RGB-SCART project.

A standard called RGB21ピン (RGB 21-pin) was used in Japan. It is physically identically to a SCART cable and also transfers RGB signals, but the pin connections differ. Besides video information there are also power lines in a SCART cable that carry up to 12V. If you accidentally plug a SCART cable into an RGB21 socket you might fry the input within seconds. Basically all cables you can buy are SCART cables, even RGB cables for Japanese NTSC systems. In most cases you will only come into contact with RGB21 if you import an upscaler unit from Micomsoft's XRGB line of products. It is also often called JP21.

Cable Quality

Cable quality is very important for analogue signals. A cheap cable will cause an annoying hum and a range of picture problems. Checkerboard patterns are very common with cheap cables, but also cables that look decent might have problems with solid colors and will add some noise to the picture. Aside from official cables from Nintendo and Sony there are a range of well respected modders that will hand craft cables of high quality for a very reasonable price. Some people swear on RGB cables with clean sync, but in my experience there is no quality difference between a well made cable with composite video as sync and composite sync. However there might well be cases in which a cable with clean sync performs better.

One seller that is highly regarded is retro_console_accessories on eBay. If you're an active member of the German community Circuit-Board you should look for Kurzschluss_480Volt's cables. I use them for my Nintendo consoles and the quality is excellent.

CRTs

crt How do Cathode Ray Tubes actually work? As I already described in the teaser the technology behind CRTs is really interesting and if you're interested in physics you should check it out in detail. But let's focus on the basics here.

CRTs use three beams that scan the front screen from the top left to the bottom right in horizontal lines. Each beam corresponds to one of the primary colors and lights up small spots when it hits the screen. In contrast to modern monitors there is no horizontal resolution. While you may know that 1080p (normally) means 1920 x 1080 pixels, 240p on a CRT only means that there are 240 lines drawn on screen. On a standard LCD you have square pixels. On a CRT on the other hand the picture is squashed into a 4:3 resolution. For some systems like the SNES this means that the pixels are streached out horizontally. Some consoles (mostly arcade machines) used their supreme processing power to stuff more pixels into a line than you could fit on a screen with perfectly square pixels. Converting these non-square pixels to an LCD screen with square pixels is a challenge, but more about that later.

Another basic you should know about is the difference between 240p and 480i. 480i means that your TV is displaying an interlaced video with 480 lines, but at each screen refresh only half of the lines are drawn. The lines of the last refresh are still glowing on the screen and give the impression of a complete picture. The downside is that the picture jumps slightly up and down. If you want to display a 480i signal on an LCD you will run into interlacing artifacts, which show as ugly lines in motion scenes. Deinterlacing can get rid of them, but this step adds to the delay and usually lowers the sharpness. As you don't need any deinterlacing on a CRT it makes for a good display for 480i sources. The consoles of the PS2 and Gamecube generation used 480i on a SD CRT for most games with a few exceptions. Starting from that generation consoles also began to use 480p progressive mode which is the better choice for LCD displays, but cannot be displayed on a SD CRT.

The most interesting resolution for retro games is 240p. In this mode there are 240 lines on the screen that are refreshed around 60 times per second. Because CRT TVs are build for 480 line content there will be a darker line in between the 240 picture lines. These are usually called scanlines, even though techinally the colored lines are the actual scanlines. The example picture above shows a 240p signal. You can clearly see the red, green and blue sub pixels and the darker horizontal lines between them. The benefit of 240p is that the picture is rock solid and doesn't flicker like with 480i content. Basically all games on retro consoles from the NES to the N64 or Playstation use 240p as their main display mode. Although some 240p games switch to 480i for certain scenes. The technical difference between 240p and 480i is that the second field of a frame is delayed by half a line for 480i content.

Scanlines

emulated crt
Hover to remove CRT effect.

When you look at the CRT photos you will notice that there are dark horizontal lines, commonly called scanlines. They appear when a 240 line progressive signal is displayed on a CRT TV, in contrast to 480i material. These lines are not actually part of the game, that's why you won't see them on Nintendo's Virtual Console or other emulators by default. They also won't show if you connect your old console to an LCD TV. But scanlines are not just an artifact of an old display technology, they enhance the picture in a way that is not instantly clear.

Scanlines do not add any information to the picture, but by leaving every other line blank they trick your brain into adding information. The brain is trained to find patterns in everything we see. A round shape will look blocky in very low resolutions, but with missing parts between the pixel lines your brain connects the dots and makes it appear much smoother. Similarly, most objects that only consist of a few pixels look much more detailed with scanlines. They will also make color gradients look smoother than with just big blocky pixels. In addition to the scanlines, the overall softer image and color bleeding between pixel on a consumer CRT TV help with this effect. On top of that scanlines also help to mask some noise that might be in your video signal.

Dithering

Consoles that only had limited processing power or a limited color palette often used dithering to achieve transparency. This technique uses the fact that there is strong horizontal color bleed on a composite signal. By alternating pixels in a line it is possible to create a mix of the two colors. A waterfall as in Sonic the Hedgehog can be produced by alternating blue pixels with the pixels of the background. Dithering was most notably used in Sega Mega Drive games. By mixing two colors it was also possible to create colors that were missing in the color palette of the system.

dithering

The right image was blurred horizontally by 1px.

dithering zoom

Zoomed in part of the image.

There are various problems with this method though. The biggest problem being that it only works with composite cables and not the higher quality S-Video or RGB cables as they don't have the same amount of color bleed. To play games that use dithering on an LCD TV you have to simulate the horizontal blur. A few examples can be found on Retro-Sanctuary.

30Hz Drop Shadow

A big part of 2D retro games use drop shadows for transparency. With this technique a sprite is shown only for half of the frames. Because the picture alternates between showing a sprite and not showing it 60 times per second it appears as if the sprite is transparent. This effect also works on modern systems as long as the game is shown in full 60fps. When the game is displayed at only 30fps it will appear as if the sprite vanishes completely or as if it keeps its full opacity. This is a common problem with video platforms like Youtube that in the past only supported 30fps videos.

Overscan

CRT TVs had problems displaying an image on the sides of the screen, which results in a cut off part of the image. To accommodate for this, analogue signals have blank lines on the top and bottom of the screen and also black space on the sides. Some games gained a few milliseconds processing time by decreasing the vertical size of the picture. On a digital TV or captured image these overscan areas appear as a black border around the video. These borders are in addition to the black borders on the side that appear when a 4:3 image is displayed on a 16:9 screen.

Gaming on a Digital Flatscreen

crt Gaming on LCD flatscreens has become the standard for most gamers since the PS3 / Xbox 360 generation, as modern consoles and PCs offer high resolutions that demand a high definition panel. The benefits are obvious: flatscreens offer a big screen, brilliant colors, great contrast and dark blacks. There is also no high-pitched noise that plagued CRT TVs.

But there are also downsides. On most sets you will experience input lag. That means that a button press on the controller takes a while before you can see the action on the screen. This delay can be anywhere between 2ms compared to a CRT on a gaming monitor to 10ms on a fast TV, or even 30ms on an average TV. Most people won't notice this, but if you're used to instant reactions on CRT displays it might take a while to adjust. Still, the benefits outweight the problems.


HD Consoles and PCs

Modern consoles output 720p or 1080p at 59.94Hz. Many games on HD consoles are only rendered at 29.97fps, showing the same image for two frames, but there is an increasing number of games that once again are rendered at 60fps. Especially Nintendo focuses on a smooth framerate of 60 frames per second. Connecting modern consoles to your TV is a breeze, just plug in the HDMI cable and you're good to go. Don't forget to switch to the Game Mode on your TV though! HDMI receivers and surround speakers will immerse you further into the games by placing the sounds around you. On modern PCs you can also get higher resolutions like 1440p or 4K and framerates of 120 fps or higher with a monitor that supports high refresh rates, if you have the money to spend on one or more high end graphics cards. Steam's Big Picture mode has made it easier than ever to connect your PC to a TV, just like a console. It adds a console-like interface to your game library that can be controlled with a gamepad and has sufficiently big text that can be read from a distance. As with consoles, PCs can also output video and audio over a single HDMI cable.

Retro Consoles

240p lcd The biggest problem with LCD TVs is that they have problems with older consoles. Consoles that support 480p output over component will still deliver a reasonably good picture. 480i composite on the other hand will look extremely ugly, to the point where it's no fun to play. To make it worse, most TVs do not understand 240p and will mess up the picture with wrong (and unnecessary) deinterlacing, screen tearing and sometimes even outright no picture. The processing also adds a considerable amount of delay to the inputs which makes retro games feel sluggish on most LCDs.

Linedoublers, scalers and scanline generators

This is where linedoublers and scalers come into play. They are small (or sometimes big) boxes that will take the input from your console and convert it into something that your TV can handle better. The quality of these devices varies greatly. You can get a cheap box for under 50€ or you can spend over 300€ on a high-end model. I won't go into detail here, because Fudoh already wrote down everything you might want to know about them (and more!) on his website: Deinterlacing, Scaling, Processing: Classic videogame systems on LCD and Plasma screens

Besides scalers there are also scanline generators. If you just take a 240p image and double each line to get a 480p signal you won't get the same look of a CRT TV. To help improve the look of the games and hide some flaws in the analogue signal you can get a scanline generator to add fake scanlines to the picture. Some scalers will also have this feature included already. Again, if you want to know more about this visit Fudoh's website and spend some hours there.

Framemeister

framemeister The XRGB-mini Framemeister from Micomsoft is arguably the best scaler for 240p video games at the time of writing. At the price of around 350€ (incl shipping, taxes and accessories) it seems like a hard sell at first glance, but if your goal is to play retro games on a big TV it is absolutely worth the money. For capturing gameplay it is also the best option at the moment. But why is it so good? Unlike modern TVs and many other upscalers the Framemeister was actually developed for retro consoles and the engineers at Micomsoft understand the fine differences between 240p and 480i. It will take any input signal from composite up to RGB and output it at up to 1080p over HDMI. It also has the option to add scanlines to any of its inputs. The resulting picture is perfectly sharp and there are no problems when the game is in motion. If you don't like the sharp pixels you can use one of the many settings on the Framemeister to adjust the picture to your liking. There is one drawback though. The Framemeister adds a small delay to the signal, around 25ms. If you have a very slow TV this might be a problem, but even on an average TV with 30ms input lag it won't matter.

If you are sensitive to input lag you might find that the XRGB-3 is the better option for you. It can linedouble a signal to 480p using the VGA output in just 2ms.

All XRGB devices use RGB21 inputs. Never use them directly with a SCART cable.

To learn more about the Framemeister check out Fudoh's review. For a comparison between the different XRGB devices check Fudoh's Micomsoft Special. If you prefer a video you should check out My Life in Gaming on Youtube.

Video Output Rate and RGB Range

The standard refresh rate for NTSC is 59.94 fields per second. Each field contains half of the information of a 480 lines image or a full 240 lines image. Two fields are packed into one frame, resulting in a standard framerate of 29.97fps. Any modern console outputs at 59.94Hz, but back in the '90s consoles only took the standard as a rough goal. A CRT TV could display anything that is reasonably close to the standard refresh rate without any problems. Each time a CRT receives a new frame it is drawn, for some consoles a bit faster than the standard, for some a bit slower. LCD TVs aren't so forgiving. They try to sync their display frequency to the input signal, but will only do that for a limited range around the 59.94Hz standard. For retro consoles this means that if the TV cannot synchronize with the output rate of the console either frames are dropped or drawn double the normal duration, which results in slight stutter. Depending on the TV it might also cause screen tearing, which describes the situation where the top and bottom of the screen do not show the same time point of the game.

60.09881387708959 fps

The NTSC SNES for example outputs at roughly 60.10Hz. This doesn't look like a big difference from the 59.94Hz standard, but it can result in a dropped frame every 6.3 seconds. The problem gets worse if you convert a PAL console to output at 60Hz. The most common mod for PAL SNES consoles results in a video output rate of roughly 59.56Hz. This is so far away from the NTSC spec that it causes a doubled frame every 2.6 seconds. Other consoles like the Genesis with an output rate of 59.92Hz are closer to the standard and will most likely not cause stutter on an LCD TV.

Modern Systems

With modern graphics cards you wouldn't expect that these issues still persist. While the output rates for 59.94Hz and 60.00Hz are very close, there are still problems if you connect them to a TV to watch movies at the original 23.976Hz output rate. Intels Core processors just fixed the problem with the current generation (Haswell) and AMD cards have been very close to perfect for many years, but current NVidia cards still can't hit the right output rate. For example the NVidia GeForce 750Ti outputs at 23.972Hz instead of 23.976Hz, which causes a visual stutter roughly every 4 minutes. This doesn't sound too bad, but because of the longer frame duration it is especially noticeable.

RGB Range

HDMI can transport video in different formats. YCbCr is a family of digital color spaces that is often used for DVD and BluRay blayback. The standard to display games over HDMI is by sending a digitial RGB signal. Digital RGB video comes in two styles, Full Range RGB and Limited Range RGB.

Full Range RGB transmits each color as a value between 0 and 255. A value of 0 for all colors is pure black and 255 for all colors (FF in hexadecimal) is pure white. This system is also used in most PC applications and you can also find it in the stylesheets for this website. However many devices will use Limited Range RGB by default. Limited Range RGB transmits each color as a value between 16 and 235. A value of 16 on all three color channels is interpreted as pure black and 235 on all channels is pure white in this case. The whole color range is compressed from 256 steps to 220 steps, making it a little bit coarser. The amount of possible colors is lowered from 16.7 million to 10.6 million in Limited Range RGB mode. This system is very similar to the color range of YCbCr. Most higher end TVs try to detect Limited vs. Full Range automatically, but sometimes choose the wrong one. To fix this there is often a manual setting. Overall both 0-255 and 16-235 should produce the same colors, but Limited Range output will show some banding in gradients. Both YCbCr and RGB can also transmit colors with finer granularity (more bits per pixel), but the benefit on consumer grader TVs is only minor.

Misnterpreting a Full Range signal as Limited Range will result in severe loss of detail in dark and bright areas. All colors that were in the 0-15 or 236-255 value range are now also interpreted as pure black and pure white, instead of shades of each color. Similarly, displaying a 16-235 signal as 0-255 without proper conversion will result in blacks that are only a shade of grey.

Game Capture Basics

To capture game consoles you need a device that accepts the video and audio from your consoles. This chapter lists some of the popular options as of late 2014. If you need some help with choosing what device is right for you, you can check the guide for a list of important qualities.

You can also skip ahead to the highest quality capture devices.

USB Grabbers

usb grabber
IO Data GV-USB2 [source]

The cheapest devices you can get are USB grabbers. These small dongles usually have inputs for composite and S-Video along with audio. Composite should be avoided at all costs, as it just can't deliver a picture quality that people would want to watch. S-Video on the other hand can deliver decent quality. As all devices that will be discussed, USB grabbers vary greatly in their quality. There are decent devices like the EZCap and Dazzle, but also a ton of really bad clones that don't even support 60Hz from PAL consoles. If you absolutely want one of these I would highly recommend the IO Data GV-USB2. These devices are limited to 240p and 480i. In most cases they do not distinguish between 480i and 240p and record everything as 480i, requiring manual deinterlacing to get good picture quality.

HD USB Capture Devices

usb capture
Elgato Game Capture HD [source]

This is a big category. These range from devices that only support component to devices that will deliver lossless 1080p capture at 60fps. Some highlights of this category are:

Elgato Game Capture HD
One of the first capture devices that could record in 1080p. It offers a digitial HDMI input along with analogue inputs for retro consoles and component sources. It features an onboard H264 encoder that removes the stress from your CPU and delivers small file sizes with still great picture quality. It also has an HDMI passthrough feature that allows you to play the games on your TV while they are recorded on your PC or laptop. The downsides are that 1080p content is only recorded at 30fps and that the PC application has a few seconds delay, which you will have to account for if you want to use it for live streaming.

Elgato Game Capture HD60
The successor to the Elgato HD. Unlike the previous version, this one supports 1080p at 60fps. In the upgrade process it lost the analogue input, so it only supports HDMI. It still works on USB 2.0 and has an onboard encoder.

Micomsoft XCAPTURE-1
A high quality external capture device with HDMI and analogue inputs and passthrough outputs. It can record 1080p lossless at 60fps and it can also record retro consoles correctly.

AverMedia ExtremeCap U3
A USB 3.0 capture device without an onboard encoder. In theory you get basically lossless picture quality in 1080p at 60fps. The biggest problem with this device is that it highly depends on the USB 3.0 chipset of your PC. You need specific verified USB 3.0 chips to use its full potential.

AverMedia Live Gamer Portable Lite
An alternative to the Elgato HD. If you want a device to record your HDMI consoles then this is a cheap option. It only supports HDMI and 1080p is recorded at 30fps like on the Elgato HD, but for many people this will be enough.

Internal Capture Cards

internal capture
Micomsoft SC-512N1-L [source]

Besides external devices there are a wide range of intenal capture cards that use the PCIe slots of your PC.

AverMedia DarkCrystal HD Capture Pro
Also known as H727 or C027. This is a cheap internal card that allows you to losslessly capture 720p from HDMI. It also offers component, composite and S-Video inputs. The H727 became famous because an old driver version lets you record HDCP protected video. The HDMI input only accepts limited range RGB and the analogue inputs only deliver average quality. AverMedia recently revised the card and lowered the component quality significantly in the process. Still, it's a decent card if you want to record 720p from HD consoles and some retro games and don't want to spend more than necessary.
Note: I got feedback saying that the card supports full range RGB. I have checked it with my card again and mine does not record full range RGB correctly. Apparently the newer H727E version of this card supports full range RGB.

Micomsoft SC-500N1 / Startech PEXHDCAP
One of the most interesting capture cards that was released by Micomsoft in Japan and later brought to the west under the Startech brand. This card is limited to 720p / 1080p30 on its HDMI input, but unlike the C027 it handles full range content correctly. Besides the HDMI input there is a component input that delivers excellent quality beyond any other device I've seen including high end scalers and TVs. What makes this card so special is that it has a DVI input that accepts analogue RGB signals. It actually accepts 15kHz RGB from a wide range of devices. This card will give you excellent quality from any home console that can output RGB, as well as most arcade boards. There are some arcade boards that are cut off at the sides, but this usually only happens for boards that are very far off from the 59.94Hz standard. The only problem with this card is that the driver disables the C1 sleep state of your CPU which results in higher energy use and more heat output.
Update: On Windows 8 this problem seems to be fixed with the latest drivers.

Micomsoft SC-512N1-L
The successor to the SC-500N1. This card supports lossless 1080p 60fps capture and adds high quality composite and S-Video capture to the mix. It also comes with a passthrough which is highly appreciated. Other than that it has the same perks and problems as the previous card.

PC Capture

Recording PC gameplay is easier than recording consoles, as PCs offer an array of capture programs. Of course you can also use any of the HDMI capture devices.

Software solutions
The most popular capture software in the past was Fraps. Fraps allows you to capture gameplay from most games and save it to your harddrive. The captured videos are nearly lossless and can become huge very quickly. Capturing videos in intense 3D games will have a noticeable hit on the game's performance, so you need a beefy system. If your system is fast enough you can also record at higher refresh rates like 120fps or higher resolutions like 2560x1440. It is recommended to save the videos to a seperate harddrive that doesn't have to load the game at the same time. A RAID array of multiple disks might also be required to handle the high write requirements. Recently there appeared more options besides Fraps. Dxtory is like Fraps a paid program that can record your gameplay, but unlike Fraps it offers a lot of settings. One of the most interesting settings allows you to record with any VFW encoder like Lagarith or x264. Especially x264 can compress your videos very well without a huge hit on the quality. To use it you will need a strong CPU however. There is also the free MSI Afterburner which can not only monitor your GPU but also record gameplay.

Hardware solutions
Like consoles you can capture PC gameplay with a capture device. This can be especially useful for live streamers who can use one PC to run the game and a second PC to stream the gameplay to services like Twitch.tv. It can also be used to record on one PC and offload the encoding to the external device. Before you get a HDMI capture device you should think about the audio part. When you use an external capture device you have to send the audio through HDMI as well.

GPU encoding
If you have a recent GPU you can also record gameplay with the onboard H264 encoder of your graphics card. For NVidia users this can be done easily with ShadowPlay through the official NVidia software. AMD users can use Dxtory or MSI Afterburner together with the AMD VCE h264 encoder (OpenEncodeVFW).

Basic Capture Devices

If you want to capture retro consoles and you are more concerned about the cost of the capture equipment than the quality of the footage you can record, then there are lots of cheap options. A device like the IO Data GV-USB2 or even an EZcap will give you good quality for any SD console that is limited to 240p and 480i. In this case you should still use S-Video and avoid composite. Check out this tutorial by TheThrillness for a step by step instruction on how to use these devices.

svideo capture

S-Video from the SNES captured with the AverMedia H727 and scaled to 720p.

For consoles that can output games in progressive 480p mode you can still use an S-Video device, but you will get better quality with a component capture device. These devices are a bit more expensive, but there are lots of options out there. Some require a PC, others will work on a Laptop with USB and there are even a few devices that do not require a computer to record gameplay at all. If you want to capture HD consoles on a budget you should aim for a HDMI capture device that can capture 720p. As with the component capture devices there are a lot of options and often they offer both component and HDMI.

The following chapters will focus on some of the best options for high quality RGB captures.

Micomsoft SC-500N1

framemeister The Micomsoft SC-500N1 PCIe capture card is a fantastic internal capture card that has excellent quality on its HDMI and component input. On top of that it has a VGA input that supports retro 15kHz signals at a wide range of refresh rates. The card is also sold for a very low price in Europe and North America under the Startech brand called PEXHDCAP. Reports by users have shown that the cards are indeed identical and share the same drivers. The HDMI input supports resolutions up to 720p60 and 1080p30. As a consequence you cannot capture consoles in 1080p as they run at 1080p60. Unlike some cheaper cards the SC-500N1 supports full-range and limited-range HDMI video. The card also has no problems with video signals that do not match the 59.94 Hz standard.

Sync Strike

syncstrike To use the full potential of this card for retro gaming you need a way to connect the SCART RGB output of the consoles to the DVI-I input of the capture card. The RGB signal of consoles uses composite video as sync information. But to capture RGB you need a clean sync signal that is stripped of the composite video. Sync information can be stripped with an LM1881 chip. Unless you want to build your own sync stripper you can get a pre-built Sync Strike from the German shop ArcadeForge. The Sync Strike accepts an RGB signal on its input and outputs the same RGB signal but with clean sync on its HD-15 ("VGA plug") output. The signal is not changed and can't be directly connected to the VGA port of most monitors, unless they support 15kHz signals. The power for the LM1881 chip is taken from pin 8 of the SCART plug. If the SCART signal doesn't carry power on pin 8 you can use an external 5V power supply and connect it to the screw terminal (the wire with grey stripes connects to ground on the Sync Strike). To connect the Sync Strike to the SC-500N1 capture card you can simply use the included VGA to DVI adapter. The audio can be connected with RCA cables from the Sync Strike to the analogue audio input on the component dongle of the card.

amarectv

Once you've connected everything you can start recording footage either with the included software or any program that can use DirectShow sources like AmaRecTV. The preview window will behave like a windowed PC game, allowing you to play on the PC (with a minimal delay) and also hear the music through your PC. To record your gameplay you should use a lossless codec like Lagarith or the highly optimized H264 encoder x264vfw. The complete setup for this is explained in the Detailed Guide.

RGB Quality

sc500n1_1

The resulting quality is very nice, but not without minor flaws. As the picture is recorded with a fixed horizontal resolution of 720 pixels there is a minor amount of horizontal blur. This is a flaw of the sampling process and inherent to any capture card that records at the original resolution. Why it happens and what you can do against it is explained in the Post Processing chapter. Another small problem with this setup is that the Sync Strike can add a minor amount of noise to the video if you power it through the screw terminal.


Component Quality

sc500n1 component Component quality on the Micomsoft SC-500N1 is really detailed and has vibrant colors. Even small details get captured and there is very little color bleed. There are no issues at all. Even the letterboxed output from a PSP results in very high quality captures.

Micomsoft XRGB-Mini // The Framemeister

framemeister
Click to zoom.

The XRGB-mini Framemeister is one of the easiest solutions to play and record retro consoles and at the same time it delivers the best quality for 240p consoles. Once you rewire or replace the RGB21 to 8-pin adapter with an adapter that accepts RGB SCART it becomes nearly plug-and-play. All you have to do is plug in your console and switch to the RGB input. There are some settings that should be adjusted that are explained on the guide page. The Framemeister shines with RGB input, but its other inputs are also above average quality. Plug in any of your consoles with either composite, S-Video, RGB or component and the Framemeister will convert it to an HDMI signal that can be captured with any HDMI capture device.

This makes it easy to incorporate it into your gaming and capture / streaming setup, as it can be handled like a normal HD console. You can also use cheap lossless HDMI splitters instead of RGB splitters that are hard to find and lower the quality slightly. Like with any source, the quality you get depends on the type of capture card you have. A lossless capture card will result in higher quality and low delay on your PC while a capture device with onboard H264 encoder will have slightly lower quality due to the compression and colorspace conversion that is necessary for standard H264. By default the Framemeister will output at the same rate as the original console, but to enable support for TVs and capture cards that do not accept non-standard refresh rates it can be set to output at a fixed 60.00Hz.

Note: Currently the Framemeister outputs slightly wrong colors when it outputs in RGB. Especially green can appear overly bright and blend some shades together. This is not a huge issue, but in games that display a lot of green objects like the grass in Super Mario 64 it can be a problem. It is therefore recommended to set your Framemeister to output in the YCbCr color space until this issue is fixed.

RGB Capture Quality

Enough of the introduction, here are some examples on how your retro games can look with this awesome device. The first bunch of screenshots was taken with the Micomsoft SC-500N1 capture card at 720p with a lossless codec.

Click on the image to open an uncompressed view.

The next set of screenshots was taken with an Elgato HD USB2.0 capture device that uses an onboard H264 encoder. There is a very minor color bleed due to the colorspace conversion to YV12, but overall the quality is still great. On a Youtube video or Twitch stream it would be hard to spot a difference in quality between a capture device with onboard encoder and a lossless capture card that record the output of the Framemeister.

Click on the image to open an uncompressed view.

You can also view all screenshots on the gallery page.


Component Capture Quality

framemeister component

Component quality on the Framemeister is nothing special. There are no major flaws, but the whole image appears rather soft. Good TVs can handle 480p component input as good as if not better than the Framemeister. For monitors without component input it is still a nice feature and you can also use the scanline overlay through the Framemeister.

Composite and S-Video Capture Quality

framemeister composite

SNES gameplay captured with a composite cable on the Framemeister.

As you should expect the composite quality shows the flaws of this signal type. However the Framemeister still makes it look decent and offers the same low latency and correct handling as with the other inputs. There are no annoying moving distortions on the sides of objects.

framemeister s-video

SNES gameplay captured with an S-Video cable on the Framemeister.

S-Video content looks good and there is only a low amount of color bleed. If you don't have RGB cables for your consoles you can play them without problems, but most people will upgrade to RGB after a while to use the full potential of the Framemeister.

Other Capture Solutions

RGB to Component Converters

Another popular solution to capture RGB consoles involves an RGB to component converter. CRTs with component input were not uncommon in North America. Users with such a TV can use a converter like the Kramer FC-4 or CYP CSY-2100 and a component splitter to play on their CRT TV and capture the video with a capture device that can capture low resolution component video. The conversion doesn't lower the quality by much, making this a relatively cheap solution for people who do not have easy access to RGB capable CRT TVs and who don't want to play looking at the preview window of the capture card.

GBS-8220 scaler

The GBS-8220 scaler has been hyped a couple years ago in combination with the SLG 3000. It is an easy and cheap RGB scaler, but it has the problem that it handles 240p content as 480i. It also does not offer a clean 2x scaling, which will cause the scanlines from the SLG 3000 to be on the wrong lines for parts of the image. As this scaler has sold a lot of units and is still sold many people try to use it in their capture setup. If you have a PEXHDCAP you can skip the GBS-8220 and just connect the Sync Strike to the DVI input for better quality. Avoid this one.
Note: There is an alternative firmware for the GBS-8220 that improves its performance.

Capturing Scanlines

scanlines If you've got a Framemeister or an SLG 3000 you might have thought about capturing the gameplay with awesome scanlines. This is not a great idea. Scanlines only work when you can control the picture scaling. For Youtube videos or Twitch streams you have no control over the actualy scaling that the user sees. In many cases they won't watch on the source quality which ruins the scanlines from the start. But even on source quality it will often only look good if they are watching fullscreen on a 1080p monitor. If they are watching in normal windowed mode or if they have a screen with a different resolution the scanlines won't be spaced equally.

Another problem comes with the compression. Scanlines just don't compress well. Instead of adding something to your video you will lower the overall quality. Especially in motion and with darker games they can cause a really ugly mush. Pair that with the fact that the majority of people do not want to see scanlines and it should be clear that capturing scanlines is not a goal that should be pursued.

Post Processing

There are a couple of steps that might be necessary to perform on freshly captured videos. All of the basic steps can be performed by open source software like VirtualDub.

Deinterlacing

Interlaced videos contain two half pictures (= two fields) in one frame and are usually saved with 29.97 frames per second. If you watch them on a PC without deinterlacing you will notice a comb effect in motion.

There are two cases of interlacing that can happen with captured video games, natively interlaced games and 240p games that were recorded as 480i.

Real interlaced video
In this case the video has to be deinterlaced by one of the many deinterlacing algorithms. Depending on the algorithm you choose you will end up with a 29.97fps or 59.94fps progressive video. Good algorithms to deinterlace games are Yadif and QTGMC. Yadif should be available in most programs, while QTGMC is a bit more complicated to use and will require a lot of processing time. The guide page shows an example on how to deinterlace 480i game content.

240p games recorded in 480i
This step is not complicated, but using the wrong algorithm will destroy the quality of your video. The correct way to handle most videos like this is to duplicate the fields and double the frame rate, starting with the top field. The deinterlacing filter in VirtualDub will do this correctly, converting a 480i 29.97fps video to 480p 59.94fps. In some rare cases you have to start with the bottom field. Choosing the wrong starting field messes up the order of the frames and is obvious to spot. Depending on your capture device there might be additional steps necessary to remove flicker. A great tool to encode videos like this is yua. There is also Fudoh's "all fixing" VDub/AviSynth package for 240p games available from his site. It contains a filter plugin for VirtualDub, a saved processing chain and an AviSynth script to load the original recording into VirtualDub.

Aspect Ratio

A simple step in post processing is fixing the aspect ratio. Unless you are capturing from a scaler that already ouputs the correct aspect ratio, it is required to change the aspect ratio to match either 4:3 or 16:9 depending on the game. Most capture devices record at a 720x480 resolution, which is slightly wider than what you would see on a TV. To fix it you resize the image horizontally to either 640 pixels for 4:3 or 853 pixels for widescreen content. This should be done with the bicubic or Lanczos3 algorithm. It doesn't matter if the console renders the image with a horizontal resolution of 256 pixels (SNES) or 384 pixels (CPS), all games are designed to be displayed with a 4:3 (or 16:9) aspect ratio. If you skip this step, round objects will appear slightly oval.

Upscale algorithms

To change the resolution of your captures you can just stretch it, but it pays off if you know about different basic scaling algorithms. The following four algorithms are the most common you will encounter, but of course there are countless other algorithms as well that have their own strengths.

Nearest Neighbor - This algorithm just duplicates pixels and will retain sharp edges. It should only be used with integer scaling factors. If you want to convert a 720x240 recording of a 240p game to 720p while still keeping it sharp you should first scale it vertically by a factor of 3. To correct the aspect ratio from the new 720x720 resolution to 960x720 you should use one of the following algorithms in the second step.

Bilinear - Bilinear filtering uses bilinear interpolation to merge a group of 4 pixels to create a pixel in their center. The result is very blurry, but it is a very fast algorithm that is used in many application and games.

Bicubic - The bicubic filter uses bicubic interpolation, which is a more sophisticated algorithm that creates a smooth image with a low amount of artifacts. It is well suited to scale images and doesn't need an integer scaling factor.

Lanczos3 - Lanczos filters are often considered as a good compromise between the higher quality scaling filters. It requires more computational power than the bicubic filter and produces slightly better results in many cases.

RGB range conversion

If you have captured a video from a source with Limited Range RGB output on a card that supports Full Range RGB you might have to expand the colors from 16-235 to 0-255. This is a trivial fix that can be done with the Levels filter in VirtualDub or similar options in other programs.

Rec. 601 vs. Rec. 709

wrong colorspace

720p video decoded with Rec. 601 instead of Rec. 709. Hover over the image for the correct version.

When you're working with videos you have to know about Rec. 601 and Rec. 709 which are recommendations on how video signals in the YCbCr color spaces (including YUY2) should be processed and shown. Rec. 601 applies to SD content (480i/p) and Rec. 709 applies to HD content (720p and above). If you're using a program that tries to decode a video with the wrong color matrix you will end up with slightly wrong colors, especially green will look odd. Rec. 601 doesn't specify a color gamut directly, but NTSC SD content uses the SMPTE-C color space by convention. Even if you are recording from an RGB source you will most likely have to work with YCbCr since most consumer recording devices change the video to YUY2 or similar internally.

The above screenshot shows how VirtualDub opens a Lagarith encoded capture of the Framemeister's output at 720p by default. Even though the video is in a HD resolution it is decoded with the SMPTE-C color gamut. The result looks wrong, but if you don't know about the differences between the two you might not notice the problem and try to fix it by changing the contrast or the saturation. The correct version of the picture is shown in the second image. In VirtualDub this is fixed by adding the "alias format" filter and forcing Rec. 709 (HD). Update: The "alias format" filter in vdub doesn't work correctly. You have to use the ColorMatrix AviSynth plugin.

If you're capturing footage in resolutions from 240p up to 480p you might also run into problems when you upscale the videos to 720p. For example, if you open a 240p video in VirtualDub and you increase the size to 720p and then encode it with x264, it will show up wrong in media players. To fix this you need the ColorMatrix plugin in AviSynth which can convert the color gamut to the correct levels for HD video. Please note that other video editing programs might not have this problem.

Pixel Aspect Ratio and Sampling

Analogue RGB signals from retro consoles use composite video or composite sync in addition to the color information. This type of sync doesn't contain information about the horizontal pixels. This is commonly called RGBS as opposed to RGBHV, where H and V stand for the horizontal and vertical sync. RGBHV is used in more modern devices for VGA for example. On CRTs it doesn't matter that there is no horizontal sync information, because each line of the picture is drawn across the whole screen. On LCD screens and for capture this is a problem. In the process of creating a digital version of the signal the picture lines are sampled and pushed into a mask of pixels. The number of pixels is fixed and doesn't take the original console into account. Usually there are 720 or 640 horizontal pixels after the sampling step.

sampling

240p signal with non-square pixels sampled and linedoubled to 720x480 pixel.

Retro consoles usually only have a low amount of pixels in the horizontal resolution. These pixels are stretched to fill a whole line on the screen. In the case of the SNES there are 256 pixels horizontally in each line on the console. To fill the screen the pixels are slightly stretched, resulting in pixels that are wider than tall. The actual pixel ascept ratio (PAR) for the SNES is 11:10. On a PC each pixel has the same width and height, or in other words a pixel aspect ratio of 1:1. In the sampled version of the signal each non-square pixel from the console influences the color of 1 or 2 horizontally adjacent square pixels making it slightly blurry on the horizontal axis.

Enhancing the Pixels

zoom

Framemeister screenshot captured with the SC-500N1 at 200% zoom. PAR 10:11

Let's have a look at a real example, a screenshot in 720p of Super Mario All-Stars on the SNES converted to a digital signal and upscaled by the factor 3 by the Micomsoft Framemeister and captured on a PC with the Micomsoft SC-500N1 capture card. The picture is perfectly sharp vertically, because the analogue signal contains the vertical sync information and each line of the source image ends up in a set of 3 seperate lines of pixels in the sampled picture. Horizontally the picture is a bit blurry though. This is because the sampling created each pixel by one or two neighboring pixels of the source.

enhance

Same screenshot with enhanced pixels at 200% zoom. PAR 1:1

With additional information about the console the picture can be improved. By horizontally scaling the picture down to its original 256 pixels horizontal resolution with the nearest neighbor algorithm the original pixels are restored. Afterwards the picture is stretched back horizontally by the factor 3 with the nearest neighbor algorithm. The result is a very sharp picture that looks close to an emulator. The picture shown here is a best case scenario. Often there will be small color distortions in some columns. If the picture is scaled down to a wrong resolution the result will be a total mess, even when the target width was only 1 pixel off.

enhance correct ar

Enhanced picture with correct aspect ratio.

At the end the picture is scaled back to the correct aspect ratio with the bicubic algorithm. The result is a significantly sharper picture than the original capture. This procedure can be done with video editing programs like VirtualDub or picture editing programs like Photoshop.

Note: The picture above is indeed from a recording on my SNES, but it is a best case scenary. This method doesn't work that well with systems that have more than 256 pixels horizontal resolution.

Encoding

To save disk space and upload bandwidth the videos should be encoded with the x264 encoder. A simple yet powerful tool for this task is HandBrake. It's an open source program that encodes your videos in just a few clicks. Another recommended software is MeGUI. This tool bundles a lot of other application and offers all possible options to encode your videos with x264. However to use MeGUI efficiently you should know your way around with AviSynth scripts.

Of course you can also use any video editing program and use your gameplay footage as clips for a bigger video. A reasonably priced product for this is Sony Movie Studio Platinum Suite 12. It doesn't offer as many options as the professional offerings from Sony and Adobe, but it should be enough for a start.

x264

x264 offers a lot of options, like lossless encodes, different color spaces and tons of advanced features. To start encoding though you only need to set the option for the picture quality, which affects the file size of the encode. The best way to do this is by the CRF (Constant Rate Factor) setting. It is a value between 0 and 51* that defines the overall quality of each scene. You should use a value between 16 and 24, where lower values give better quality at the expense of higher file sizes.
*(or 63 if you're doing 10-bit encodes instead of the standard 8-bit)

In the past it was common to set an average bitrate and do a 2-pass encoding, but this method is outdated unless you have specific file size limits. Using the CRF will give you lower file sizes if you're aiming for good quality.

Color Subsampling

One important attribute of video is color subsampling. Usually there are two chroma channels in digital YCbCr video, Cr and Cb. To lower the data rate and file sizes the chroma channels often use a lower resolution than the luma channel which determines the actual resolution of the video. Most commonly this is done by cutting the chroma resolution in half (4:2:2), which reduces the data rate by a third without a visible impact on the video once it is in motion. Most capture cards use this mode (YUY2).

Another very popular mode is 4:2:0 which includes only the color information for each alternate video line. To display images that were encoded in this format the player has to upscale the color information. Depending on the algorithm and the processing power of the device the resulting quality will vary substantially. 4:2:0 is used as YV12 on DVDs, BluRays, H264 and many other applications. To watch 4:2:0 content on a PC I can only recommend MPC-HC together with madVR and a dedicated graphics card to do the upscaling. Another mode is 4:4:4, which is the term for video that doesn't downsample the color information. Only professional capture hardware can process either RGB or YCbCr 4:4:4 content without lowering the quality to YCbCr 4:2:2.

4:2:2 can also be used in H264 videos by setting a few parameters for the x264 encoder. The quality will be higher, but it will also result in slightly higher file sizes and not all media players might support this format.

Streaming

Like other console and PC games, retro games can be streamed to services like Twitch.tv with programs like OBS or XSplit. If you're not familar with Twitch you should spend a few days in some of the streams to get a feel for the site and streaming in general. Most streamers will use emulators, which often result in input lag problems, inaccurate emulation and horrible blurry shaders. With the capture devices that were discussed on this site you can stream your retro games from the actual consoles. The quality you can get surpasses even the offers on the Virtual Console for Wii U and the PSN versions of PSone games.

The simplest way to stream is to use screen capture to capture the preview window from your capture program. This should work in any case. If you're using a DirectShow device in AmaRecTV you can use the Live functionality to use AmaRecTV as a source for your streaming programs and record with it locally at the same time. Some capture devices like the Elgato Game Capture HD60 even come with software that has all the streaming functionality built in.

Detailed Guide

If you're done with the basics you can continue to the detailed guide that provides step by step instructions about the setup and recording process.

Push Start to continue: Start

Further information


shmups.system11.org
shmups.system11.org • View forum - Hardware

Possibly the most helpful and informative forum if you want to play retro games. Not only for shmup fans.


forum.speeddemosarchive.com
Tech Support

The Tech Support of the speeddemosarchive forum has great information on how to record retro games with cheap hardware. Known for their charity marathons on Twitch.tv.


retrorgb.com
RetroRGB

In depth information about anything RGB related.


retrogaming.hazard-city.de
Deinterlacing, Scaling, Processing: Classic videogame systems on LCD and Plasma screens

The source for anything that has to do with video processors. Run by Fudoh, who is also active in the shmups forum.


junkerhq.net/xrgb
XRGB-mini FRAMEMEISTER - XRGB wiki

XRGB wiki. Lists most of the basic settings and should be a good starting point to configure your XRGB-mini.


Game Console RGB SCART Cable Diagrams
Game Console RGB SCART Cable Diagrams

SCART Cable Diagrams for any console you can think of.


gamesx.com/wiki/doku.php?id=av:nintendomultiav
av:nintendomultiav

In depth information about the MultiAV connector on Nintendo consoles.


Thanks

I want to give credit to a few people who helped me a lot. Most of the information on this page was gathered from many helpful persons on different forums.

  • Fudoh - I would have never known about good upscalers without the knowledge that he shares on his website and the extensive information and help that he offers in forums.
  • TheThrillness - Your input and questions in the still ongoing thread "Further edit" with more than 500 posts have been a great motivation for me to try out stuff. Every time I think that I don't need to buy another overpriced gadget one of your posts convinces me otherwise.
  • A lot of people on the shmups forum who have shared their knowledge and ideas.

Contact

If you want to contact me, send me a PM on the shmups forum or shoot me a tweet @blizzzilla. You can also contact me at contact.