Wednesday, March 22, 2017

Wavebeam NES Palette

The many different colors of Super Mario Bros. (NTSC Hardware, FCEUX, Nestopia, Wavebeam)
If you grew up playing the NES as much as I did, then you probably have the 50 some colors of the system forever burned into your memory. The interesting thing though is that the colors you experienced probably weren't the same as someone else. Many have run into this problem after loading up their favorite games on an emulator or the NESRGB and realizing how different the games look from their memory. So what exactly is going on?

While hue and chroma aren't tracked by NTSC and can cause TV sets to look different if not properly calibrated, it seems the TV's NTSC decoder is the main culprit for why no one can agree on what the colors are supposed to look like. TV manufacturers wanted their sets to stand out in the showroom from the competition, so they started sweetening and tweaking the NTSC signal when decoding it to make it more colorful and vibrant. Every manufacturer used different chips with different formulas, and to make things worse, not even all TVs from the same manufacturer treat the signal the same. (Note: see the Sony CXA2025AS palette in the comparison images at the bottom. It was reverse engineered from a consumer Sony IC and shows what this processing can do to the image) So because of this it seems impossible to ever come up with a single NES palette that everyone can agree on.

For me, this all started after getting an NESRGB. I wasn't happy with the colors on its stock palettes so I started researching more about it. I began to learn of the great work people like FirebrandX and RGBSource were doing to create very accurate palettes based off the raw composite signal coming out of the system. My hope was that if I fed their raw capture palettes into my RGB CRTs I'd have something identical to how an original NES displayed on it. Unfortunately, it looked the same as the raw capture since RGB inputs skip the TV's NTSC decoder.

I decided then to create my own palette, simply named Wavebeam, that looked great on my CRTs and brought back my nostalgic memories. I do not claim that it's accurate in any way to a single CRT or mathematical formula or even Nintendo's intentions. It's only based off my preference and the many CRTs I've owned. I started working on it on an IPS screen, then tweaked directly on a professionally-calibrated Sony KV-25XBR via RGB from my GroovyMAME box. I went through dozens and dozens of games, cross-checking 7 or so different palettes for consistency and manually tweaking colors to hit the sweet spot on the CRT. While the palette is meant for display on a CRT, I think it works great on digital displays as well.

View the full comparison

Download the .pal

Download the NESRGB firmware - Wavebeam(old version - to be updated) > NTSC Hardware (FBX) > Sony CXA2025AS

Continue Reading...

Monday, November 7, 2016

Audio Solutions for your Retro Gaming Setup

Polk RTI A1 speakers paired with a Topping TP22 Amplifier

Audio always seems to get the short end of the stick when it comes to games. They're primarily a visual medium, and endless debates abound on the internet on getting the best graphics and picture possible (and for good reason!). The interesting thing though is that when I think back to my fondest memories of games, many are actually the sounds and songs that played over and over while I was immersed in their worlds. The melodies of classics like The Legend of Zelda, Mega Man, Contra and many more will be forever burned into my memory.

Don't let me fool you though, I was just as guilty of ignoring the audio portion of the equation for a long time. When I first put a CRT setup together, I grabbed the quickest and easiest thing to get audio working: an old set of computer speakers. They're actually a great solution for many reasons that we'll go over below, but they just weren't cutting it for the long term. In my quest for the ultimate audio setup, I explored a few alternative options that I have presented here in this guide for your convenience. This is by no means an exhaustive list, but should cover at least the most popular options.

Before we continue on, I will just say that I don't think there's any one perfect option for all setups. It all depends heavily on your preference, budget, and space. Also, since this article is strictly focused on retro game systems, we will only be considering solutions for a stereo line-level device. Space is usually the highest priority, so I have ordered the options roughly from the least amount of space required to the most.


Sennheiser HD 280 Pro

If you're in a space where you can't make any noise, or you're just looking for the best audio bang for the buck, then headphones may be for you. There are many different styles of headphones like in ear, on ear, over ear and even whether they're open or closed. Each has its own benefits, but I will leave this research up to the reader to find the best solution for themself.

The one thing you will need in addition to the headphones is a headphone amplifier. While you can get sound on headphones straight from the stereo line, a proper headphone amp will fully power the larger drivers in pro sets and allow you to set the volume to the optimum level.

  • Best audio for dollars spent
  • Best space efficiency
  • No noise to bother others

  • Single-player only
  • Can be uncomfortable for extended periods
  • Requires amplifier

Headphones (Ex.)

Pair with a Headphone Amplifier (Ex.)


Creative T20 Series II

Computer speakers are a great solution for those looking for something quick and easy. They're small and easy to place, magnetically shielded so you can get them near a CRT, and powered so you don't have to worry about an amp or receiver. The one major downside though is that the sound quality can be lacking on most sets. Finding a set with a good mid-range can be a challenge since most are either tinny from their small size, or boomy from the addition of a sub-woofer that's meant to give the impression of a fuller-range sound.

  • Small footprint
  • Amplifier built-in
  • Magnetically-shielded

  • Poorest overall sound quality

Computer Speakers (Ex.)


KRK Rokit Family (photo courtesy of KRK)

Studio monitors are similar to computer speakers in that they're powered and shielded, but they're designed specifically for professionals doing audio work. When engineers mix music they need a flat, accurate sound. Mixes produced this way have a much better chance of sounding good on many different kinds of sound systems (ie. car, home stereo, TV speakers, headphones, etc.). Studio monitors are made for a very specific purpose, and personally, I can't recommend them for general entertainment. They have a very flat sound, and depending on the set and the person they can come across as harsh, making them fatiguing to listen to for extended periods.

  • Very accurate sound reproduction
  • Amplifier built-in
  • Magnetically-shielded

  • Flat sound can be fatiguing for extended periods

Studio Monitors (Ex.)


Polk RTI A1

Bookshelf speakers are a great compromise for those looking for a bigger, warmer sound in a small space. However, not all bookshelf speakers are magnetically shielded to protect your CRT (be sure to verify!) and require an external amplifier to power them. For the Bookshelf's smaller size I would recommend the small Class T amplifiers. These tiny amplifiers started out as super efficient car audio amps, then made the transition to the bedroom. Audiophiles love them for their clean, accurate sound, and if you don't need a bunch of inputs or high wattage they're a great solution.

  • Warmer, fuller range sound compared to computer speakers
  • Good bass reproduction

  • Not all sets are magnetically-shielded
  • Requires amplifier

Shielded Bookshelf Speakers (Ex.)

Pair with a Class T Amplifier (Ex.)


Onkyo SKF-4800 (photo courtesy of Onkyo)

For the biggest sound, you'll want to go with Floorstanding speakers. These speakers generally have several drivers in them and great bass reproduction. The biggest downsides though are the space and power required. The Class T amp suggested for the bookshelf speakers probably won't cut it, so you'll want to move up to a full-on receiver. Again, if you're getting them close to the CRT make sure they're magnetically-shielded since not all sets are.

  • Biggest, fullest sound
  • Excellent bass reproduction

  • Need a lot of space
  • Not all sets are magnetically-shielded
  • Requires a large amplifier

Shielded Floorstanding Speakers (Ex.)

Pair with Stereo Amp/Receiver (Ex.)


Hopefully this article was able to present some good options for you in your quest for the ultimate retro setup. There are of course even more options out there, so if there's anything you'd like to see here let me know!

Continue Reading...

Friday, September 9, 2016

Hardware Review: Shinybow SB-2840 RGB to Component Transcoder

The Shinybow SB-2840 SCART-RGB to Component-Audio Converter


For retro gamers outside of Europe, getting a great RGB setup takes quite a bit more effort. Our CRT TVs unfortunately lack the sought-after SCART RGB inputs that enable the highest possible quality output from a bevy of retro systems from the Super Nintendo to the Playstation 1 (if you're unfamiliar with RGB or SCART, please check out my Retro Gaming Intro Guide). The most talked about avenue is finding a Professional Video Monitor (PVM) with an RGB input, but there's another great option that's more affordable, and might actually be preferable to some on both price and aesthetic levels.

Consumer CRT TV tubes have unfortunately gotten a bad rap over the years, which I believe mostly stems from their lack of high quality video inputs. Many arcade monitors in the 80s and 90s used the same tubes as consumer sets, but you will probably remember them looking much better than your home TV. I still remember the Street Fighter II Championship Edition cab at my local arcade looking particularly stunning. Those tubes had the RGB signal of the game board directly wired to them, resulting in a brilliant picture with no degradation or distortion.

We may have never gotten RGB inputs, but high-quality Component inputs did start showing up on CRT TVs toward the end of their lifespan in the late 90s and early 2000s. And while these TVs can be had for cheap (and even free) on Craigslist, they still leave your RGB-capable console using inferior signals. That is, without a little help!

Two different RGB-Component Converters: Shinybow SB-2840 (left), modded SPECIALTY-AV (right)

Luckily for us, it's possible to convert an RGB signal to Component with a handy device called an RGB to Component transcoder (or sometimes SCART to Component converter, or RGB to YUV converter, or any variation thereof). The transcoders are entirely analog devices, and can convert an RGB signal in real-time to Component with zero latency and minimal quality loss (it's still up for debate how much quality is lost, but to the naked eye it should be nearly indistinguishable).

There are several brands of transcoders out there, the most famous of which being the CYP CSY-2100. To my knowledge it's no longer manufactured, but a few "CSY-2100 clones" have popped up on Amazon and eBay to fill the gap. I had initially grabbed the SPECIALTY-AV one off Amazon last year, and while it had it's downsides, I thought it did a pretty good job overall.

A few weeks ago, however, I ran into the Shinybow SB-2840 by chance while browsing the US reseller Ani-AV. If you know of Shinybow, you know their name means quality. They produce professional-level video products, which means that unlike the cheap Chinese knockoffs, they have higher grade components and more consistent QC. Being somewhat unsatisfied with various aspects of the SPECIALTY-AV, I decided to go ahead and give it a try. So, let's get to the unboxing already!


Back of the box

Full contents

The inside of the manual

And of course, the device itself:

SCART RGB input side

Component & stereo output / power input side

Mounting brackets on the bottom side, and no need to open it and void warranty!


First off, price wise, you're going to pay at least $30 more for the Shinybow over the knockoffs like the SPECIALTY-AV. I feel this difference is more than justified though, especially for something so integral to your setup that you want to last and perform flawlessly. One thing to keep in mind is that these transcoders are completely analog devices, so the quality of the components in them directly effects the picture quality.

Build wise, the Shinybow puts the knockoffs to shame. The SPECIALTY-AV feels flimsy, and the metal cover is thin and will give if you push on it. Even the SCART port gives when you push a cable into it (not to mention the cable fell out on me several times). In comparison, the Shinybow is solidly built, and feels heavy and strong. All the ports feel tight and sturdy with no give. This is pro grade gear after all. You also get a nice built-in mounting bracket on the frame to help easily manage your setup.

By far the most convenient factor is that no color calibration is required for the unit. With the CSY clones you will have to open the device, and basically twist some knobs with a screwdriver in attempt to balance the picture. I spent some time watching howto videos and used the 240p Test Suite to calibrate the clone, but even after getting it as good as I could it still felt a little off. When I hooked the Shinybow up, I immediately noticed how much brighter and vivid the picture was, with bold colors and pure whites. Talk about user friendly!

One other distinction that sets it apart from the clones is that it has built-in stereo output. While it's possible to mod in stereo-out from the clones or use a pop-out extender, it's nice having high quality plugs and no worries of distortion.

Compatibility-wise, the SB-2840 should work with any sync and resolution you throw at it. I'm using a mix of Composite Sync (CSYNC) and Composite Video Sync consoles and all work fine. The Shinybow supports 240p, 480i, 480p, 720p, and 1080p resolutions, and while I haven't tried them all I have seen confirmation on the internet that it does indeed work with all. One thing to keep in mind is that the analog transcoding is only converting the colorspace, not changing the input resolution. If you feed in 240p, that is exactly what will come out.

Note: Always make sure to use a proper Component video cable. While you can use regular RCA composite audio/video cables (the yellow, red, and white leads) for Component, they are not meant for Component! The audio leads on composite cables are only rated at 35 ohm, not the standard 75 ohm required for video. Having the wrong resistance cables can lead to interference and other artifacts.


So the big question is, how does it look? Well, it looks amazing in person, and while CRTs are hard to capture the vibrancy of, I've made a humble attempt with my phone camera. Here are some pictures taken with an iPhone 5 on a Toshiba 27A40:

Ninja Gaiden on RGB-Modded NES

Super Mario Bros 3 on RGB-Modded NES

Super Mario Bros 3 on RGB-Modded NES

Rondo of Blood on RGB-Modded PC Engine Duo

Rondo of Blood on RGB-Modded PC Engine Duo

Super Ghouls 'n Ghosts on SNES

Sonic the Hedgehog 2 on Genesis

Metal Slug 2 on GroovyMAME (see my GroovyCube project for more details!)

Street Fighter II CE on GroovyMAME (see my GroovyCube project for more details!)

Mortal Kombat on GroovyMAME (see my GroovyCube project for more details!)

Mortal Kombat on GroovyMAME (see my GroovyCube project for more details!)


So, all in all, the SB-2840 comes highly recommended. It's a quality piece of gear that performs flawlessly and will easily last as long as your consoles. If you're using a Component-only CRT and need to get RGB on it, then it's easily your best bet at this time.

Continue Reading...

Tuesday, February 16, 2016

A DIY Arcade Console That Plays All Your Favorite Games in 240p RGB

DISCLAIMER: The GroovyCube is a DIY project, NOT a real product! In no way do I take credit for the amazing work by the MAME team or Calamity (creator of CRT Emudriver and maintainer of GroovyMAME). This guide is just a collection of my research and notes assembled to hopefully help others out. I do NOT take responsibility to any damage you may cause to your system or hardware. Proceed at your own risk!

I. Introduction

If you're a die-hard retro enthusiast, you probably already have every console under the sun hooked up in the best possible quality via SCART RGB to a CRT TV or PVM (for anyone left scratching their head over these terms, please check out my Introduction Guide). Even with every retro console ever made, you're still missing out on a huge chunk of gaming history: the arcade. While people have been building amazing MAME cabinets for years, some of us just don't have the space or resources for one. Thankfully, over the last few years conditions have ripened for easily building the ultimate 240p arcade console that never was.

You may be asking yourself, why go through all this trouble when you can just use a Raspberry Pi or hacked Wii? While the Pi is a great and inexpensive way to play games on digital displays, it's not able to output high-quality analog video signals like RGB or Component yet (Update: there are a couple solutions out there now like Pi2Scart and Gert666, but as far as I know Pi is still not able to seamlessly switch resolutions). Hacked Wii's are also great for playing various console emulators on CRTs, but it's arcade support is dismal, and can't even load ROMs over 20mb due to memory restrictions.

GroovyMAME emulating Street Fighter II: CE on Olympus OEV203

Luckily, a saint that goes by the name Calamity took it upon himself to create the perfect combination of software for PCs that can detect an arcade game's native resolution and output it exactly as the real hardware would to your CRT TV. The purpose of this guide is to build a small, fast machine that fits comfortably into your existing SCART setup and allows you to play any arcade game from Donkey Kong to DoDonPachi in perfect 240p RGB. I dubbed this hobby project "GroovyCube" as a shorthand, but really there is nothing special about it versus any other PC with this software setup.

II. How it works

Displaying the front-end on a Toshiba 27A40 via RGB->Component converter

Before we start talking about the system, let's quickly cover how all this works. The biggest obstacle to displaying computer video on a CRT TV is that computers output at a frequency of 31kHz, while TVs expect a much lower 15kHz. CRT TVs operate at 480i (640x480 interlaced), and retro game consoles run at almost half that at 240p (320x240 progressive). Computers, on the other hand, use much higher resolutions (640x480 progressive and beyond), and therefore require a much higher frequency. Because of this, modern video cards don't commonly support the super low resolutions we need for retro games.

This is where Calamity comes to the rescue. He created a hacked video driver just for this situation called CRT Emudriver that enables compatible Radeon video cards to output the low resolution 15kHz signals needed for TVs. Just being able to output at a single frequency isn't enough though. Unlike game consoles, arcade games used a myriad of different resolutions and frequencies.

GroovyMAME emulating classic arcade games on an Olympus OEV203 in TATE mode

Luckily, through a combination of software (VMMaker and GroovyMAME, Calamity's own modified version of MAME), you can build all the needed resolutions for your games once and your system will switch seamlessly between them when the games are launched. The result is perfect scrolling with zero screen tearing or juddering for virtually any arcade game out there with no effort from you beyond the initial setup!

I will quickly mention here that the ArcadeVGA cards sold by Ultimarc skip the hacked drivers and have only the CRT-safe 15kHz resolutions burned into their ROM. The huge downside to these cards though is that they ship with a limited number of timings built-in, and may or may not include ones for the games you want to play. The CRT Emudriver setup on the other hand allows you to play all games without concern of whether it's supported by the card or not.

III. Hardware

No, that's definitely not a hard drive zip tied to the case.

The following are the specs of the machine I built for this project. It's comprised of some old parts I had, as well as some new ones I purchased. The only unique component in the system that you must have is the video card, which I will describe further below.

  • Intel Core i3-4170 3.7 GHz Processor
  • ASRock H97M-ITX 1150 mITX Intel Motherboard
  • Crucial Ballistix Sport 8GB 240-Pin DDR3 1600 SDRAM
  • Sapphire ATI Radeon HD4350 PCI-E Video Card
  • Silverstone Sugo SG05W Mini-ITX Case w/ 300W Power Supply
  • 80GB SSD Boot drive + 600GB 2.5" Storage drive
  • 2x GELID Solutions FN-PX12-15 120mm Case cooler (one for case, one for CPU)
  • Prolimatech PRO-SAM17 Samuel 17 CPU Cooler
  • Windows 7 Professional
  • Mad Catz Fightstick Tournament Edition

And a few important notes on the system:
  • Video Card: The video card is crucial to getting everything working! You must find an AMD graphics card that's compatible with CRT Emudriver, so take a look at the official compatibility list on the site and find the one that's right for you on eBay. The HD 4xxx series seems to be the best right now, especially if you find one that's passive-cooled. We're not using the card for anything other than pushing out a 15kHz signal, so it doesn't need to be powerful. Lastly, keep in mind the DVI port is the primary port on most of the cards, so a DVI-VGA adapter is probably required.
  • Windows 7: XP is also compatible with CRT Emudriver, but I believe the install process may be a little different. For simplicity's sake, this guide assumes you are using Windows 7. Update: I've also received confirmation Windows 10 works as well.
  • Form Factor: Mini-ITX is a newer form factor, and is much smaller than ATX or even MicroATX motherboards while still supporting powerful processors. I looked for the smallest case I could find, but the major limiting factor on the physical side is that it must have a PCI-E slot for the graphics card. My top three contenders for cases were the Silverstone SG05 and ML05B, as well as the Thermaltake SD101. The thing about cases this small is that one dimension is bound to disappoint you. In the case of the SG05 it's the height, while the ML05B is much wider and the SD101 is deeper. I looked at the space in my setup and found the SG05 to be the best fit for me.
  • Processor: MAME can only use two cores simultaneously at most, so having more than that won't help performance. By default, the target system is emulated entirely by your processor on a single thread, even if it's a 3d game. (It's possible to offload the audio and some other subsystems to a second thread, but I haven't tried it yet.) For this reason, I went with one of the fastest dual core processors I could find. The higher the clock speed of the processor, the faster a frame can be crunched. I've ran everything from 3d fighters to CAVE shmups with the i3, and haven't had a single hiccup so far.
  • Hard Drive: I used an SSD as the primary drive for the quickest boot time possible. After enabling Fast Boot in the BIOS the system can go from powered off to the front-end ready to play in just 30 seconds - usually before the CRT is even warmed up.
  • Cooling: I initially started with the stock CPU cooler and case fan that came with the SG05, but during testing I found it to be running a little loud and hot. I decided to upgrade it with a couple GELID 120mm fans and the Samuel 17 CPU cooler, and the load temperatures went from 65C to 40-45C while staying whisper quiet. I got the idea for the combo from this handy HTPC build video.
  • Fightstick: Thankfully, Street Fighter IV caused the fightstick market to explode, and now there's all kinds of awesome USB fightsticks with real arcade parts out there that are compatible with PCs. This is an entire topic on it's own, but the one thing I'll mention is that if you're interested in mainly playing older games, you'll want to find an easily moddable one. The reason for this is that modern joysticks are 8-direction, and classic games like Pac-man, Donkey Kong, Galaga, and others are either only 2 or 4-way. While it may sound like 8 can surely handle 4 or 2 (which it can), it's VERY frustrating to control due to the diagonals interfering with the input registering. If you get a stick with the Sanwa JLF like the Mad Catz Tournament Edition, they actually have a square plate on the bottom of the joystick that can be rotated to a diamond for 4-way only.

IV. VGA to SCART Cable

Custom VGA and 3.5mm stereo to SCART cable

One of the keys to making all this work is the video cable. We need to get from the DVI or VGA output of the graphics card to a male SCART connector. From there you can easily adapt it to a PVM with a breakout cable or a standard CRT with a Component converter. You have a few options here: you can either build your own cable, buy a premade cable, or use the Ultimate SCART Adapter

The cheapest way by far is building your own cable. You can start with a male to male SCART cable, desolder one end, and then solder on a VGA connector. I used this VGA to SCART schematic to make a cable, and it looks amazing via breakout cables on a PVM or through a Component converter on a consumer TV. If you're using either of those methods then you don't need to bother with the Molex power detailed in the schematic. The power lines are only used for specifying 4:3 aspect ratio and RGB videos modes on consumer Euro TVs, so you can safely skip them if not using one of those sets.

Lastly, just a word of caution on buying cables. There are various VGA to SCART cables you can find on eBay and such, but without seeing their wiring it's impossible to tell if they'll actually work for our purposes. There's always the option of buying one and then modding it, but it will be a risk whether it has enough wires in the cable. If anyone finds a good solution, please let me know!

WARNING! You can damage your TV by sending it bad signals! Always double check your wiring before plugging it in.

V. Setup Guide

A custom GroovyCube theme for the Attract-Mode frontend

Once the hardware is assembled and you have a VGA to SCART cable, you're ready to set it all up. The following guide will take you from installing Windows through having the front-end automatically launch and ready to play games. I was originally just going to link to cools invaluable guide that greatly helped me out, but it's old enough now that there are some differences that will confuse beginners. Consider this guide a major revision to his, but with the focus on TVs instead of arcade monitors.

Step 1: Windows 7 Installation and Configuration
  1. Hook up a standard computer monitor (not our eventual CRT TV) and keyboard/mouse.
  2. Install a fresh copy of Windows 7.
  3. Install all drivers EXCEPT for video card (do NOT install Catalyst)
  4. Install 7-Zip
  5. OPTIONAL: Install RealVNC server. This is a safety net, and comes in handy if you get into a situation where neither CRT or LCD will display anything. It's also convenient after the box is setup if you want to access it without hooking up keyboard and mouse. One thing that might trip you up later on is that if you're connected to the machine and trying to play games in 240p you will get interlaced resolutions instead of progressive. Just always remember to disconnect your session before playing.
  6. Run Windows Update.. and wait (ensure no graphics drivers are installed in the Optional updates)
  7. Now is a good time to configure Windows while waiting:

Step 2: GroovyMAME Setup

  1. Download vanilla MAME 64-bit (0.170b at time of writing) from the official site and extract to C:\MAME
  2. Delete the file C:\MAME\mame64.exe (it will be replaced with GroovyMAME)
  3. Download the latest GroovyMAME (0.170 at time of writing). Go to the latest folder, and find the file in the format groovymame64_xxxx.xxxx.7z
  4. Extract GroovyMAME with 7-Zip to C:\MAME, and rename the file to groovymame64.exe
  5. Now generate a config file (mame.ini) for GroovyMAME:
    • Click Start and type "C:\MAME\groovymame64.exe -cc" (without quotes) and press Enter
    • Navigate to C:\MAME and open our new config file, mame.ini, with Notepad
    • Find the following settings in the file, change them, then Save and Close the file:
      • gamma 0.7
      • skip_gameinfo 1
      • disable_nagscreen_patch 0
      • disable_loading_patch 0
      • frame_delay 1
  6. OPTIONAL: If you're using a PVM or smaller TV and would like to manually rotate your display to play vertical or horizontal games how they were intended then do the following (always remember to turn off your monitor before rotating it!):
    • Open a new copy of Notepad
    • Add the line "orientation rotate_r" (no quotes)
    • Click File, Save As, and navigate to C:\MAME
    • Save as "vertical.ini"
  7. Finally, add your test ROMs and BIOSs to C:\MAME\roms

Step 3: CRT Emudriver and VMMaker

  1. Download CRT Emudriver 1.2b + VMMaker + ArcadeOSD for Windows 7 and extract to C:\
  2. Rename the folder C:\crt_emudriver_13.1_1.2b_w7_64 to C:\VMMAKER for simplicity
  3. Download GroovyMAME 0.161. This may seem odd since we downloaded a newer version above, but this is the last good version for generating a resolution list for all games, and we'll use it only for that purpose - not for actually playing games. If you try to use the latest version for generating resolutions, some games will work, but others with special refresh rates like Mortal Kombat and R-Type will use incorrect interlaced resolutions. Update: This appears to have been fixed in the latest version of Groovymame, so you can just copy the groovymame64.exe you put in the MAME folder over.
  4. Extract GroovyMAME 0.161 to C:\VMMAKER, and rename it to oldgroovy.exe
  5. Open C:\VMMAKER\VMMaker.ini with Notepad
    • Change MameExe's value from "\Emu\Mame\mame.exe" to "C:\VMMaker\oldgroovy.exe"
    • Save the file and close it
  6. Navigate to C:\VMMaker\driver, right-click Setup.exe and Run as Administrator
    • Click OK to accept warning of Calamity as publisher
    • Click Next to begin and wait patiently. If asked to restart at any point, say NO.
    • When finished you will be prompted if you'd like to enable Test Mode on reboot, say YES.
    • Do not reboot yet!
  7. Navigate to C:\VMMaker, right-click VMMaker.exe and Run as Administrator
  8. When it says completed press the spacebar to close the window
  9. Reboot your machine now.
  10. Navigate to C:\VMMaker and run Arcade_OSD.exe
  11. Press Enter to select Video Modes
  12. Scroll down and find the resolution lowest on the list that's not greater than 640x480 at 15kHz. Do not pick a greyed out line (even though it might let you switch to it)! For me it was 640x240 at 15kHz.
  13. Press Enter to select the resolution, you should see a test screen appear on your LCD (it might be squished)
  14. Unplug your LCD from the system and plug in your CRT
  15. You may just have a black screen at first, just hit Escape if nothing pops up right away. If you find yourself at the Windows Desktop and don't see the Arcade_OSD on screen, just right click it in the taskbar and close it, then re-open it.
  16. Arcade_OSD should look normal at this point on your CRT, but the desktop might look weird
  17. Go into Video Modes again, and find 640x480 at 15kHz on the list and select it.
  18. If everything looks good, scroll down to "Set as desktop Mode" and press Enter
  19. It might drop you back out to the Desktop now, but you should see a popup for Arcade_OSD asking to Keep or Revert. It may be squished and deformed, but just hit Enter to Keep it.
  20. Press Escape a couple times to exit Arcade_OSD and you should have a decent looking (but probably flickery) interlaced desktop
  21. WARNING! While Windows is safe now, when your computer boots up it will still be outputting 31kHz signals which may damage your 15kHz CRT. Until you flash your card with ATOM-15 below, always shutoff your monitor and don't turn it back on until you hear the Windows startup chime.

Step 4: (Sanity) Test It!

  1. Open a Command Prompt (Click Start, type cmd and press Enter)
  2. Navigate to C:\MAME ("cd .." twice to go up to the root, then "cd MAME" to switch to MAME directory)
  3. Type "groovymame64.exe myrom" where myrom is the part before the .zip of the game you want to run
  4. You should have a beautiful 240p 15kHz picture if everything worked right!
  5. If there was a problem you should see it described there. I highly recommend learning vanilla MAME on your desktop computer first before beginning this whole process. Getting together your ROMs and BIOSs and learning how to execute them by command line before starting will make things much simpler.
  6. Press TAB to access MAME settings and map your buttons
  7. In addition to mapping the Player 1 Coin and Start buttons, make sure to map a button in the MAME User Interface controls to the Cancel action so you can exit the game via your joystick/gamepad. Once you get the front-end installed, pressing it will dump you back to pick another game to play. Something like Down + Start should make it unlikely to be hit accidentally.

Step 5: Final Configuration

  1. Enable "Fast Boot" mode in your BIOS. This will bypass looking for extra boot drives and speeds up getting into Windows. Only enable this once your done setting up your hardware since its tough to get back into your BIOS after you enable it. In the worst case, just set your CMOS jumper and wipe it.
  2. Turn off Automatic Windows Updates. This will prevent the system interrupting your gameplay. Just remember to do maintenance once in a while and manually run it!
  3. If you're all up to date now, the Windows 10 nags are probably already annoying you. Kill them! They will pop up over your frontend, so it's best just to get rid of them. I found GWX Control Panel to be quick and painless.

Step 6: ATOM-15 (OPTIONAL, but recommended!)

  1. WARNING! This step is very useful, but not required, and could possibly damage or brick your graphics card. ATOM-15 is basically designed to remove all the 31 kHz modes from your graphics card during boot, so it only outputs safe 15 kHz signals like an ArcadeVGA. Keep in mind this only protects it during boot, so if you change the resolution in Windows it will not help.
  2. Also note, if you have a UEFI BIOS you may not be able to see it after flashing your card. They tend to be higher resolution like 800x600 which isn't supported at 15 kHz. You have two options then, pull out the card and use your onboard video, or just reflash it back to factory. It only takes a second to re-flash it and reboot, so just make sure to hold onto your bios files!
  3. Follow the directions in this post closely. I did the Windows version without any issues.

Step 7: Front-End

  1. There are tons of front-ends out there so feel free to skip this step and do your own thing. I just picked one that was compatible with 4:3, 640x480, and wasn't too over the top (ahem.. Hyperspin).
  2. Download the latest version of Attract-Mode and extract it to C:\ATTRACT
  3. OPTIONAL: Download the GroovyCube theme, and extract the ZIP. Place the extracted "groovy" folder in C:\ATTRACT\layouts
  4. Navigate to C:\ATTRACT and run attract.exe
  5. Pick your language and press Enter
  6. OPTIONAL: If you'd like video previews and extra artwork, go to Scraper and press Enter. Change Fan Art and Videos to YES, then hit Escape to go back.
  7. OPTIONAL: If you'd like to hide all the parenthesis and brackets from the game titles, go to General, set it to off, then press Escape to go back.
  8. Select Emulators
  9. Select "mame"
  10. Select Executable, change it to "C:\MAME\groovymame64.exe" (no quotes), and press Enter
  11. Select Rom Path, change it to "C:\MAME\roms" (no quotes), and press Enter
  12. Select Generate Collection/ROM List
  13. Select Scrape Artwork
  14. Hit Escape a couple times to return to the top menu (if you go too far press TAB to get it back)
  15. OPTIONAL: If you'd like to use the GroovyCube layout:
    1. Select Displays
    2. Select mame
    3. Select Layout
    4. Press down until you see "groovy" and press Enter
  16. Escape back until you are out of the settings menus. Try out a couple games and make sure everything works.
  17. When happy press Escape, and pick Yes to exit.
  18. Right-click attract.exe and click Create Shortcut.
  19. Right-click the new shortcut and click Cut
  20. Click Start, go to All Programs, scroll down until you see the Startup folder. Right-click it and click Open.
  21. Paste the shortcut in this folder.
  22. Restart your computer.
  23. Attract mode should automatically launch, so sit back, relax, and play some games! When you're done just press the power button and Windows will handle a graceful shutdown for you.

VI. Conclusion

Hopefully this guide has been of some use to you. As you can probably tell, this is a very deep subject. There are many other emulators and games that could work with this setup, and I may explore them more in future posts. If you have any questions or comments or find anything confusing, please leave them in the comments below. And as always, happy gaming!

Continue Reading...

Tuesday, January 12, 2016

A Beginner's Guide to Getting the Best Retro Experience


Rondo of Blood via Component on JVC 17" PVM (DT-V1710CG)

Recently I started getting back into retro consoles, and (probably like yourself) quickly realized how terrible they looked on a modern HDTV. It wasn't at all how I remembered the games looking - very pixelated, smudged, and strange lines and artifacts all around. Even worse, it felt like controlling Mario and Sonic was much harder and less responsive than I remembered. Looking for solutions to these problems began my quest into the world of console hardware, video signals, display technology, cable and wiring types, and much more.

The purpose of this guide is to present to you the key aspects of having a good retro setup (low interference, no upscaling artifacts, low or no lag, etc), whether your preference is the phosphor glow and iconic scanlines of a CRT, or big, razor sharp pixels on an HDTV. Before we get to the display technology though, we need to understand how to get the highest quality video signal from our retro consoles.


Over the years there have been many different video signal formats utilized by game consoles. Before modern TVs and the now ubiquitous HDMI, all video signals were analog instead of digital. One of the earliest is RF (Radio Frequency), which combined both video and audio into a single signal, and was typically transported over the air or via a coaxial cable you screwed into the back of your TV. While functional, the image produced from this can be very noisy and distorted, and should be avoided.

Analog video cables

One step up from RF is Composite which separated the video (yellow lead) and audio (red and white leads) signals, greatly reducing distortion and improving picture quality. Another connector commonly available in the 90s was S-Video, which split the video from one signal into two and reduced color bleeding and distortion even more. Later on around 2000, Component inputs starting appearing in consumer sets, which further split the video into three signals (Y, PB, and PR - commonly mistaken to be Red, Green, and Blue because of the connector colors) giving a near-perfect picture. Unfortunately, no consoles before the PS2 generation supported it.

If you grew up in the US, you are probably familiar with all the cable types just mentioned, but you may be surprised to learn that there's one more that most retro consoles can do. In Europe, another cable type called SCART was introduced with an oddly-shaped 21-pin connector that can carry all kinds of information including video and audio between devices. Most useful to us though, is that it carries the video in four separate signals: Red, Green, Blue, and Sync. Generally speaking, RGB (the "S" is usually left off for brevity, but you might sometimes see it called RGBs) is the highest quality analog video signal you can get, and many of your consoles like the SNES, Genesis, PS1/PS2, and others can output it without even being modified! Unfortunately for those of us in the US, we never got TVs with SCART inputs or the console cables to connect them.

Composite (Left) vs. RGB (Right) on Olympus OEV 203 (Photo credit: s_tenorman)

Luckily, there are now several ways to get the cables, as well as adapt them to your preferred display device. For consoles that had multi-out connectors like SNES, Genesis, or PS1/PS2, you can easily find SCART cables for them via cable makers like retro_console_accessories or UK-based Retro Gaming Cables. Not all consoles support RGB out of the box though. Some like the NES are limited to RF and Composite by design, and need to be modified to support RGB output.

Consoles that support RGB out of the box (no modification necessary, just buy the SCART cable):
  • Atari Jaguar
  • Neo Geo
  • Playstation 1
  • Playstation 2
  • Sega Genesis
  • Sega Master System
  • Sega Saturn
  • Sega Dreamcast
  • Super Nintendo (except SNES Mini)
And the consoles that can be modified for RGB:
  • 3DO
  • Atari 2600
  • N64
  • NES
  • TurboGrafx 16
Going into how you get RGB from each and every console is beyond the scope of this guide, but there are great sites out there like RetroRGB that go into much more depth about each one individually. So now that we know how to get the best possible video signal from our retro game consoles, we're ready to talk about how to display it on our preferred device.


(Left) SMB on an emulator (Right) SMB via RGB->Component on Toshiba 27" CRT (27A40)

After trying just about every possible option, I've personally found CRTs to be the best way to experience retro games. And it's not only because that's how I remember it from my youth, but also because it's the only way to ever truly play these games 100% lag free and with perfect scrolling. Retro consoles output analog video signals that directly control the electron gun beaming the image onto the screen of a CRT, and the iconic scanline look is actually a byproduct of an ingenious trick by console makers to turn a 30 FPS interlaced display into a 60 FPS progressive display.

480i Interlacing Example - Night of the Living Dead title closeup

A standard CRT TV has 480 lines of vertical resolution, and TV programming back in the day was broadcast interlaced (480i) at 60hz. Interlaced means each field contained only the even or odd lines of the frame, and when cycled fast enough it looked like a solid image  - albeit with some flickering. Console makers, however, manipulated the video signal and forced the gun to only draw the odd lines every field, thereby turning the set into a more responsive progressive display (240p), while simultaneously making the image much sharper by removing the interlace flickering. The black lines commonly called scanlines aren't actually scanlines at all, they're just the empty space between them.

240p Progressive Example - Super Mario Bros closeup

As you can see, retro consoles were designed specifically for CRT technology, and even take advantage of how they work for their own benefit. While many just like the nostalgic glow and scanlines of a CRT, if you dig deeper you will find there is a bit more to it than that. For instance, not only are black levels and contrast generally much better than LCDs, but speedrunners and competitive gamers alike still utilize CRTs for their completely lagless display!

If you want to game on a CRT with RGB you have two options: find a Consumer TV set with a Component input, or a PVM (Professional Video Monitor) with a RGB or Component Input. PVMs generally have much sharper images with better geometry than consumer sets, while sometimes even supporting RGB out of the box, but on the flip side they can also be very hard to find, expensive, and rarely come in sizes larger than 20".


Metal Slug 3 via Component on Toshiba 27" CRT (27A40)

If you're looking for a consumer CRT that will support high quality video, the one major thing you have to look out for is a Component input. From what I've seen, a lot of the CRTs post-2000 will usually have at least one on them. Many recommend the flat Sony Trinitrons, but you must be wary of whether it's a digital or analog set. If it's digital, you will lose the iconic scanlines, and it will look much more like an LCD (for more info on the best Sony TV for retro gaming check out this handy guide).

I will also quickly mention that flat-screen CRTs are known for having poor geometry (how accurate the shape of the image is - ie. how straight lines are), but there are several models out there made by JVC, Toshiba, Panasonic, Philips and others that use the classic round tube while still featuring Component inputs.

Consumer CRT TV Connection Diagram

Once you have SCART cables for each of your consoles and a CRT TV with a Component input, you only need to obtain a SCART to Component Converter to get your RGB video signal on it. From my testing, the Shinybow SB-2840 works amazingly, and fear not, there is zero lag since it's 100% analog circuitry!

There are some cheaper clones out there, but I don't recommend them over the Shinybow. They're made with cheap parts, and don't support audio out (so you will either have to mod them, or get a popout extender). You also have to calibrate the knockoffs for the best color (there's a handy instructional video available for that), while the Shinybow comes out of the box with a perfect picture.

One last note is to make sure you get a proper Component video cable! I've seen that people tend to use normal composite audio/video cables (the yellow, red, and white leads), but these cables are not ideal for Component video signals. The audio leads on composite cables are only 35 ohm, not the standard 75 ohm suggested for video.

III. - B. Professional Video Monitor (PVM)

Rondo of Blood via Component on JVC 17" PVM (DT-V1710CG)

If your PVM has RGB inputs then you can feed the RGB signal from your console directly into it. If not, then just follow the Consumer CRT advice above and convert it to Component. The main difference you'll notice with PVM inputs is that they use BNC connectors instead of standard phono plugs. To get your SCART cable connected to it, you can either build your own adapter, or just order a pre-made BNC breakout cable.

PVM Connection Diagram

Many love PVMs because of their sharper image and bevy of inputs, but there are downsides to them as well. Most were made for industries where they saw constant use (security, hospitals, video production, etc.), and in some cases were run 24/7 for years straight. Also, people reselling them are aware collectors will pay good money for them now, and it's not uncommon to see a 20" model going for over $400 on eBay.

I will just say that PVMs are indeed great, but they really aren't the answer for everyone. If you're okay with 90s arcade-quality, then finding a 27" or so non-flat CRT with a Component input from somebody nearby on Craigslist should work well. In many cases arcade machines used the same tubes as consumer TV sets, they just had the RGB signal wired directly to them for a much better picture than what you saw at home. CRT TVs are commonly listed for free, only requiring to be picked up, and fed with a proper video signal you will get a great picture from it for a fraction of the price.


Streets of Rage 2 upscaled to 1080p by Framemeister and captured on AverMedia (Photo credit: Dave Voyles)

So you want to see giant pixels so sharp your eyes will bleed, huh? Well, prepare to pay - literally! Unfortunately, converting a low-resolution analog signal to a digital one that a modern HDTV can display is not a trivial process. Not only are SCART connectors not supported (let alone Composite, S-Video, or Component on most newer models), but there's also a whole other issue to deal with: upscaling.

On a CRT, the video signal syncs with the electron gun and moves it back and forth drawing the pixels on the tube line by line in perfect timing. Digital TVs operate much differently, with each frame essentially received all at once as a full image, not unlike a JPG file on a computer. So not only does the analog signal have to be digitized after the full frame is received, it also has to be upscaled from a tiny 320x240 image up to a 1920x1080 image that the TV can display. And, unfortunately, this is where you hit a brick wall with most HDTVs. When an HDTV receives a 240p signal, it will do one of three things: not display anything (likely), take a really long time to digitize and upscale it, and still look terrible because its not made to display it (very likely), or understand how to process it optimally and do a decent job of upscaling it both time and image-quality wise (not likely).

Whether your HDTV supports 240p signals natively or not can be found on this handy compatibility guide. If it's listed as Passes on the 240p test and has a Component input, you can just use the Consumer CRT connection method detailed above with a SCART to Component Converter. For everybody else, you're going to need a much more sophisticated and expensive device called the XRGB-Mini Framemeister.

HDTV Connection Diagram

The Framemeister is a separate processing unit made just for this situation. It takes in a SCART connection via a SCART to Mini-Din adapter, and outputs a high-quality 720p or 1080p image over HDMI very quickly (there's still some input lag, I've read between 1-3 frames in good cases). Unfortunately, the Framemeister is not cheap and will set you back at least $300 USD. If you're serious about the hobby though and don't want to go down the CRT road because of space constraints, then it's one of your only real options at the moment. There are other converters (search for "SCART to HDMI"), and while they may work, many have absolutely terrible response times (> 8 frames) that make some games nearly unplayable.

UPDATE: There is now a new kid on the block known as the OSSC (Open Source Scan Converter). From the initial reviews I've read, the input lag is even less than the Framemeister, while producing an even sharper picture. However, it's said the device isn't nearly as friendly or full-featured as the Framemeister. It's still also rather difficult to get one since pre-orders aren't catching up with demand. I will update with more info as it becomes available.

Lastly, be sure to optimize your HDTV for video games! Most TVs have an optional Game Mode that speeds up response time by disabling extra image post-processing effects and other unnecessary features. There's also usually a "Stretch" or "Full" picture mode that will make sure you're getting a full, perfect 1:1 pixel image. There are many guides on the internet dedicated to this, so just give it a search and you will find a wealth of information for your specific TV.


There are a couple things to be aware of, especially with SCART cables. When you start buying them for your consoles to get RGB output, you may see some listed as "Euro" (or just standard "SCART" if JP-21 isn't specified) style and others as JP-21 ("Japanese SCART"). They both have 21 wires that mostly carry the same info, but the big difference is which pins in the connector those wires connect to. You can easily adapt between the two (and will need to if you want to connect a SCART cable to the Framemeister), but consistency is the key here. If you have multiple consoles, you will most likely end up with a SCART switch that lets you easily switch which console is displayed on the TV. If you have a mixture of JP-21 and Euro SCART cables, then some will work and others won't. So  just make a decision before you start buying the cables if you want to go Euro or Japanese route.

One other thing to keep in mind is what kind of video sync to use in your SCART cable. That topic is beyond the scope of this guide though. Check out this page for more info.


I hope this guide has been of some use to you! I wish I had run into something earlier on that introduced the concepts of the RGB video signal, the SCART connector, and how to get them displayed on CRTs or HDTVs properly. If anything is unclear or not explained just let me know and I'll try to expand upon it. Happy gaming!
Continue Reading...

Monday, December 14, 2015

Cleaning Game Cartridge Contacts

There's probably not much need to try to convince you to clean your games if you collect retro systems and games. However, earlier this year I started getting back into it, and I quickly realized that the Q-tip and rubbing alcohol method I used as a kid just wasn't cutting it anymore.

Cartridge contacts have had 25+ years now to tarnish and get all kinds of gunk on them, and after wearing out my fingers and hundreds of q-tips they were STILL dirty. I took my quest online and began searching for better methods to clean the games, but I was shocked at what some people were recommending - some went as far as to promote the use of sandpaper on vintage electronics!

After searching high and low, I found the amazing method described on Classic Gaming Quarterly that solved all my woes. I'm only writing this post to share that guide with you and hopefully save some headaches, but I thought I'd also share some more pictures just so you can see how effective it can be.

For a good example, I recently picked up Zelda 2 on the NES. While the cartridge itself looked good, the contacts had certainly seen better days. Using a soft Staedtler eraser, I cleaned the left half of the board above in just a couple seconds. The great thing is, it only takes a few rubs of the eraser back and forth before the gunk comes right off. Here's a before and after of the dirty side above:

Follow up with Q-tips and 90% rubbing alcohol to clean off any remaining residue and, finally, polish the contacts with a dry Q-tip. You will be left with tarnish-free contacts with no unsafe chemicals involved.

Continue Reading...