Showing posts with label RGB. Show all posts
Showing posts with label RGB. Show all posts

Thursday, August 27, 2015

Analogue Nt HDMI - First Look

I finally got my Analogue Nt with HDMI upgrade in the mail today and while the base Nt has already gotten plenty of coverage, the HDMI-upgraded model hasn't been covered at all (AFAIK) at the time of this writing.

I got the default silver model with the "limited edition" white and gold controller ports:
As covered elsewhere, the construction is incredibly high quality (the power/reset button being a button from an NES controller is a particularly interesting touch, I thought):
There has been much ado about the aluminum cart slots scratching up cart shells, which hasn't been a problem for me, but I suppose if you're really worried about it, you could open the flaps with a finger while inserting the cart. /shrug

Below the HDMI port is a standard 15-pin d-sub connector, which I've seen called a "VGA port" elsewhere, though this is not the case. That is to say: you can't hook it up to a VGA-compatible display and get any video out of it. For that matter, it's apparently not RGBHV-over-d-sub, either, as it didn't produce any picture when hooked up to my multisync XM29+'s d-sub port, even though that monitor will accept "240p" non-interlaced video over that connection. I'll have to catch up with the guys at Analogue and ask about the pinout of the port. Hopefully, it's something that won't require too much effort to get going on my own. I'm planning to hack together a SCART cable and a working RGBHV-over-d-sub cable (if possible). EDIT: I just talked to the Analogue guys and it seems the HDMI and RGB/component functionalities are mutually exclusive. It seems they will swap between the two at no charge, though:
"When you upgrade your Analogue Nt to HDMI it outputs HDMI only, there are two different systems that are not compatible with each other. Though, whats cool is you can switch between RGB and HDMI if you wanted either version (we'd install either daughterboard for you for free). Also, any other cool mods that the NES community may make in the future would be compatible with the Nt too - which is super cool!"
That in mind, I may decide to switch to RGB at some point in the future, as much of my equipment is tooled for RGB/SCART/JP21, but for now HDMI is convenient.

I won't rehash any more of the information that's readily available elsewhere, so instead I'll spend most of this post talking about the HDMI upgrade. While originally advertised as an external upscaler, they eventually nixed that idea (and rightfully so, since it's not likely they'd be able to get anything worthwhile for the ~$60 cost of the upgrade) and opted instead for kevtris' brand new HDMI board, which AFAIK isn't available anywhere else just yet.

I'm still doing testing to get a feel for what the HDMI board is capable of, but out of the gate: it's pretty incredible. The image is exactly what you would expect from an emulator, warts and all. That is, the upscaled pixels are as sharp as you can get; much sharper than the output of an XRGB-Mini Framemeister (which I also have, so I can give them the Pepsi Challenge):
The colors in those shots are washed out, but that's the fault of my camera trying to adjust to the brightness of my TV's backlight. The colors are actually bright and vibrant, and the HDMI connection has none of the "shimmering" on large swaths of color that have been reported elsewhere with RGB connections.

Getting into the HDMI onscreen menu is pretty cool/crazy in that it's a button combination on the gamepad (specifically, dpad-down+select by default). Once there, it's got a ton of cool options for tweaking the video, including overscan cropping, horizontal scaling, scanline settings, scaling filters and resolution selection driven by your display's EDID:
At 1080p, the scanlines are uneven thickness (alternating thinner and thicker), just like you would get on an emulator at 4.5x scale:
1080p's uneven scanlines
I would have liked to see an option to force integer scaling to avoid this issue, but I didn't see anything like that (I'll update this post if I find otherwise; such a thing may also be added in a future firmware update UPDATE: 9/26/2015 looks like kevtris is on it). At 720p, the scanlines are even thickness, since it's an even 3x integer scale already, but the pixels aren't as sharp due to my TV doing the rest of the scaling:
720p's even scanlines
Scanline settings. NES is locked to the resolution, while the others are pre-set scale factors (i.e., they don't always line up with the pixels, which I can't stand). There's also an intensity slider that controls how dark the lines are.
Likewise, at 1080p, the vertical size of pixels isn't consistent, just as you would expect from nearest neighbor scaling at a non-integer scale factor. This is also the case with the horizontal scaling, but there is an option screen specifically for tweaking it, from 3x (for 1:1 PAR at 720p) up to stretched 16:9 (barf). The default setting is 4:3 on 16:9 displays, which has faintly warped pixels but is the natural aspect ratio for NTSC:
1:1 PAR (i.e., square pixels) using 3x horizontal scale at 720p; notice the even checkerboard pattern in the road.
4:3 aspect ratio; notice the uneven pattern on the road.
There's also a preset for 4:3 on 16:10 displays, which is handy if you're hooking up to a monitor instead of a TV, as well as an option labeled "interpolation," but I can't really see any difference between it being enabled/disabled.

There are also scaling filters, including the ever-popular hq2x/hq3x/hq4x (no filtering vs hq4x):
No scaling filter
HQ4x scaling filter
The HDMI board also includes a lot of audio settings, with individual enable/disable toggles and volume/panning for main audio and each specific add-on audio chip for FDS audio and any in-cart audio add-ons, like the ones in Gimmick and Akumajou Densetsu:
Independent volume control for each audio device
There are a ton of other options I haven't gotten to play with yet, including hotkeys for over/under-clocking (presumably to get around some incompatibility with the Everdrive N8, which I haven't gotten to test yet), soft-reset and more.

UPDATE (8/30/2015): Looking into the Everdrive issue, it seems the N8 is indeed incompatible with kevtris' HDMI board with N8 firmware >= 4.0, while the 3.0 firmware may be okay. The Analogue folks uploaded a copy of the older firmware to their Dropbox account. Testing is easy, just copy and paste the files onto your SD card and replace the newer versions. Leave me a comment if you get to try it. I hope to borrow a friend's N8 soon, so hopefully I can provide some input/testing.

Update (9/25/2015): KRIKzz got his hands on an HDMI board and has been investigating the issue. Hopefully, a fix will be forthcoming. Update (9/28/2015): Oh sweet: looks like he's got it working! Anyone with the HDMI board should upgrade their N8s to firmware v13. Update (10/3/2015): d'oh, not working for me :(. I get a garbled mess if I boot my new N8 with no SD card and a green screen with firmware v13.

In addition to the N8 issues, Kevtris' HDMI board has been having issues with some games and mappers, the most popular of which is Castlevania 3. Apparently, holding reset while powering on the console alleviates some of the issues but this isn't an option on the Nt. Kevtris is working on it, though, and it should be addressed in the upcoming update. Update (10/30/2015): Kevtris' update is out and it apparently fixes the Everdrive green screen, FDS and MMC5. Anyone still having the Everdrive green screen issue can still apply the update from their Everdrive by powering on with the HDMI cable unplugged, wait a few seconds for everything to initialize and then plug the HDMI cable back in.

I plan to update this post as I learn more but I wanted to get this info out there, both for people waiting on their Nts and for those eager to learn more about kevtris' awesome HDMI board (for reference, it seems my board's serial number is 30, so I would assume it's one of the first to make it into an end-user's hands).

Anyway, here are a couple more glamour-shots:

Saturday, August 22, 2015

Retr0brite Is Just Hydrogen Peroxide Plus Filler

I bought an SNES Mini on eBay the other day with the intention of applying an RGB restoration mod + csync. It was in decent condition other than a few scuffs and some extensive yellowing of the plastic, which I decided to try correcting with some "Retr0brite."

After reading up on recipes and some related forum posts, I decided not to go through the trouble/expense of buying and mixing up actual Retr0brite paste, which contains glycerin and xanthan gum, and instead focused on the active ingredient: concentrated hydrogen peroxide. Recipes typically call for some low-concentration, aqueous hydrogen peroxide, like you find in the big brown bottles, bolstered with OxyClean--basically dehydrated hydrogen peroxide powder--and thickeners to make a paste that you can spread onto things. This in mind, it doesn't make much sense to use relatively expensive low-concentration hydrogen peroxide as a base when you could just start with regular water and add more OxyClean...

If you have access to a Sally Beauty Supply store, they sell bottles of 40 vol creme developer, which has an even higher concentration of hydrogen peroxide than OxyClean and is already goopy, so you don't need to fool with the glycerin/xanthan gum to get it to stick to stuff. This can be helpful if you don't have an appropriately sized container in which to submerge your plastic, and reports suggest that it works within hours rather than days. However, you need to be more cautious with this, as it can damage clothing and skin/hair.

Anyway, I skipped the low-concentration stuff and just dumped a bunch of OxyClean into a roasting pan full of water, plopped the top section of my SNES Mini in and left the whole thing out in the sun for 2 days (you'll have to replenish the OxyClean periodically, as it seems to lose its mojo over time).

The first day, I didn't put nearly enough OxyClean in, so there was very little improvement. The second day, I drastically increased the concentration and had much better results. I found that, in a properly high concentration, the plastic should be more buoyant than the solution, so you'll need to hold it down with something. Also, there seems to be some disagreement as to whether the process needs actual sunlight or if any light source will do. In my case, there was no effect from 8 hrs under a CFL light bulb, so the sunlight (or a UV lamp) seems to be necessary.
Before
After
It's not perfect, but it's a pretty dramatic improvement, I think. The RGB+csync mod was a success, as well! The resulting picture is noticeably sharper than on my older model (the model with the sticker underneath the power button) and there's no annoying bright vertical line going through the center of the screen. The colors are identical to the original model because I put 1.1k ohm resistors on each line to dim the channels. The tutorial I linked above mentions this as an optional step and I highly recommend it.

Saturday, August 1, 2015

NEC XM29 Plus Broadcast Monitor

I lucked into another broadcast monitor recently, this time the "holy grail" of retro gaming monitors, NEC's XM29 Plus. I won't rehash a whole bunch of info that's available elsewhere, but I will provide some answers to questions I had as I started using it:

Unlike the Sony PVM series, the XM29 Plus has no support for component inputs, but it supports almost everything else (Svideo, composite, RGBHV, VGA). You can get a YPbPr-to-VGA transcoder, like this thing, but most of them (including that one) don't support resolutions below 640x480, so they're not good for PS1 (which frequently jumps between 480i and "240p"), non-progressive PS2 games (admittedly, the vast majority of PS2 games are 480p-capable), or "240p"/doublestrike emulation via Wii homebrew, etc.

That said, I don't think component is a particularly useful on the XM29, which is a shame because that's what I had settled on for use with my PVM. Instead, it seems best to stick with RGB SCART, which is easily converted to RGBHV, as the XM29 has two of those inputs available. You will need a sync cleaner, though, so either get a sync strike or get a cable with a sync cleaner built-in, like this one.

There's a lot of uncertainty online about which resolutions work over SCART but I can answer definitively: 480p over RGB SCART totally works fine.

Other than that, there's not much else to say. Low-res non-interlaced content has extremely sharp scanlines with thick, black spaces between them, which some people don't care for. Likewise, interlaced content bobs very visibly when sitting close to the screen. Slight geometry issues are also apparently common on these monitors, and mine's no exception. However, it still looks great and many of the imperfections can be hidden with a teensy bit of overscan.

Here are some shots (click to embiggen):
240 noninterlaced full frame TATE
240 noninterlaced closeup TATE
480i
480p

Saturday, March 29, 2014

TVs and Retro Gaming / Emulation

INTRODUCTION

Retro gaming is a hobby of mine and, as I started looking into hooking my retro consoles up to modern displays, I found a bunch of incomplete information and dead links scattered among various enthusiast forums, along with misunderstandings and oft-repeated misinformation. So, after diving down the rabbit hole and exploring a bunch of different options, I decided to post my findings in the hopes of saving others from making any costly, avoidable mistakes.

THE ISSUES

I have a big LCD HDTV with a HTPC connected that I use for watching videos and playing emulated games, and I can use various shaders to achieve an aesthetically satisfying approximation of how my retro games looked on CRT TVs. However, there are a number of reasons to use the real hardware instead of emulation, such as emulation accuracy deficiencies--which can render some games unplayable or unenjoyable--and/or latency concerns.

Sadly, modern displays like my HDTV make retro consoles look like absolute crap and can create/exacerbate latency issues, as they recognize the consoles' double-strike/"240p" signal as 480i(nterlaced)--and rightly so, since standard NTSC signals are always 480i regardless of how they're presented; the 240p standard was not created until decades later and even then it wasn't referring to the signal from retro consoles--and attempt to deinterlace them. This adds at least 1-2 frames (16-32 ms) of latency as the deinterlacer tries to combine 2 sets of fields to create a full picture, and that's before the signal even reaches the TV's upscaling circuit, which then adds even more latency (how much is added by the scaler can vary wildly from display to display).

To avoid this whole mess, we have a couple of options:

DIGITAL VS ANALOG

If you really want to use your big, digital HDTV but want to minimize latency, you'll want to sidestep the deinterlacing/slow-scaling issue by plugging your console into an external line-doubler/scaler. The cadillac in this area is the XRGB-Mini Framemeister, which is a Japanese import and costs an arm and a leg (about $475 at the time of this writing). This sexy lady will take your "240p" input, double the lines to a true progressive signal and then upscale it to an HD resolution that gets piped to your HDTV via HDMI, all essentially laglessly (it adds ~1.5 frames of latency according to Fudoh from the shmups forum). It will even add in a scanline effect, if you want. If, like me, you don't have $500 to piss away on this sort of thing--awesome as it may be--there are some cheap Chinese boxes that can handle the upscaling and deinterlacing (but not the scanline effect) at a slightly lower quality and substantially lower price. This seems like a good compromise to me, though the loss of scanlines is unfortunate. However, if your upscaler has a VGA output (like these) and your HDTV also has a VGA input, you can put a separate scanline generator, like the SLG-3000 or Toodles' T-SLG, in between and get close to the same quality as the XRGB-Mini for much cheaper.

Another consideration, though, is that the XRGB-Mini also accepts RGB/SCART signals (see the 'Analog Signals' section below for more details), while the cheaper models like the one linked above only accept composite and S-video. :(

UPDATE: I actually did purchase an XRGB-Mini recently and it's beautiful. I highly recommend it and think it's well-worth the money for an enthusiast.

It's also worth noting that any of these upscalers will give you an extremely sharp picture, similar to what you get from unfiltered emulation with nearest neighbor scaling (i.e., super-sharp/pointy pixel edges), so this option is ideal for the pixel fetishists out there but may not be desirable to old-schoolers who grew up playing on crappy little CRT TVs.

If you chose to go the digital route, congratulations: you're done! Your upscaler is providing you with the finest picture available. However, you might still want to read the rest of the information here, as some of it may be useful to you anyway, particularly the parts about analog signal quality.

Personally, those digital, super-sharp pixels never looked good to me. I'm a big fan of the way CRT TVs look and how they handle those low-res images, so I am/was forced to purchase an analog CRT. Even on an old analog display, though, we still want to keep our picture as nice as possible, which brings us to our next concern:

ANALOG SIGNALS

As far as analog signals are concerned, the top of the heap is RGB, meaning you get an isolated signal for each color, which provides a crisp, clear picture when they're all combined. Just below that is S-video, which separates the luma signal (brightness information only; produces a black and white picture) from the chroma (color; R, G and B all together) signal so they don't interfere with each other. Far below that we have composite--the familiar yellow RCA jacks--which combines chroma and luma into a single signal where interference between the two (known as chroma/luma "crosstalk") significantly degrades the picture. Slightly below composite(!), we have RF, which takes the signal and encodes it into the same format used in over-the-air broadcasts (and you know how good those tend to look...). You can compare how these signals differ in quality by loading up an emulator with Blargg's NTSC filter, which has presets to emulate RGB, S-video, composite and RF.

MATCHING INPUTS TO SIGNALS

In the USA, high-quality inputs, such as component and S-video, are not commonly found outside of large (24" and up), high-priced televisions, such as Sony's Wega line, so if you have a big house and plenty of room (and a strong back), you'll probably want to go for a real hoss of a TV with plenty of inputs. Sadly, most small CRT TVs have only coaxial/RF and *maybe* composite/RCA, which means your picture will always look pretty crummy. I lucked out and found an Apex 14" model with an integrated DVD player that also has S-video, which is good enough quality for me, so my retro consoles are now covered.

If--like me--you are satisfied with the quality of S-video and will only be hooking retro consoles up to your analog CRT, congratulations: you're done! If, however, you are a super-picky "videophile" and you think S-video is only fit for unwashed plebs and/or you want to hook your PC up to your CRT, there's more to consider:

THE MANY FACES OF RGB

Within the RGB family, there are about a million different subsets that each serve their own purpose. For TVs in the USA/NTSC world, we have "component" video (terrible, vague name, btw), which is also referred to by the color space it occupies, YPbPr. For PCs, we have VGA, which uses the familiar--typically blue--15-pin connector. For European/PAL-land TVs, we have 21-pin SCART.

Note: Europeans are lucky enough to have SCART as a standard input for CRT televisions, and many retro consoles--SNES, for example--can output this standard directly. This is a pure RGB signal and will provide the cleanest, most crisp analog picture around. HOWEVER!!, Japanese SCART (also known as JP-21 pin) and European SCART have a different pinout and, as such, are not compatible, even though they have the same connector. If you want to use a Japanese/NTSC JP-21 pin cable with a European/PAL TV with a Euro-SCART input, you will need a pin converter like this one. The aforementioned XRGB-Mini, as a Japanese device, does not require such a converter.

Aside from SCART, it's generally pretty difficult to get RGB from retro consoles, but it's usually possible if you're determined enough.

Now, even though all of these signals and connectors are technically RGB, they are incompatible with each other due to differing sync methods and signal frequencies, which means you'll need a display that is compatible with the signal and has jacks available. This brings us to:

15 KHZ VS 31 KHZ DISPLAYS

One of the major limiting factors in a CRT is the horizontal scan rate, which is the frequency at which a display can move the electron gun from the left side of the display to the right and back again. CRT monitors, like the kind you would find attached to a crummy old Packard Bell computer, have a high horiz. scan rate of 31 kHz, while NTSC TVs have a comparatively low scan rate of 15 kHz. Furthermore, devices that expect the high scan rate of 31 kHz displays and send a high-resolution signal are not compatible with--and can actually damage--displays with the lower scan rate if connected. On the other hand, 31 kHz monitors can be coaxed into displaying a "240p" signal using driver hacks like CRT_EmuDriver or xrandr and/or custom xorg.conf modelines (for some excellent info on getting 240p in Windows, see Monroe88's comments after the post). This will produce the highest-quality image possible with an emulator:


The drawback to this setup is that each system you want to emulate needs to render in exactly its native resolution or else it looks like shit, with misshapen pixels and inconsistent scrolling everywhere. The specialized Groovy Arcade distro automates some of this, but you may still have to use your monitor's hardware calibration controls to get the image to fit/center properly. I found the constant tweaking to be a tremendous pain in my ass and not really worth it.

If you're in linux, here's how you can force your monitor to act like an NTSC TV (type into a terminal from an X-session desktop):
xrandr -q
This will tell you which display you're using and which modes are available by default. My display was hooked up to DVI-0 via a DVI-to-VGA adapter.
xrandr --newmode "240p" 5.979 320 332 368 380 240 242 246 263 +CSync
xrandr --addmode DVI-0 240p
(replace DVI-0 with whatever your card reports)
xrandr --output DVI-0 --mode 240p
Some older video cards (like my Radeon X600 pictured below) for PCs will have an S-video output next to their conventional VGA and/or DVI outputs, which allows them to connect directly to a standard 15 kHz TV with S-video input:

This is very convenient, but it comes at a price: the card presents an 800x600 resolution to the PC and then crunches that down to 480i (that is, a standard NTSC signal), and it *cannot* be convinced to do anything else under any circumstances (AFAIK). This output looks pretty good, but it's not nearly as crisp as the VGA 240p 31 kHz image, obviously:
On the other hand, it is only slightly worse than a direct S-video connection from console to 15 kHz TV:
While S-video will always be slightly blurrier than RGB, the 15 kHz display is simply not capable of producing an image as high-quality as the 31 kHz display's due to its lower resolution and larger, chunkier phosphors. If you have a TV with component/YPbPr jacks, you can use a VGA-to-component transcoder box--like this one--to keep a clean RGB signal from your PC to the TV. Since it's a 'transcoder,' you shouldn't suffer any signal degradation, ideally.

UPDATE (11/14/14): Here's a pic of a PC hooked up to a 15 kHz display (an arcade monitor, to be specific) via RGB:
The photo kinda sucks and doesn't really do it justice, but you can see that the space between scanlines is much less pronounced vs the 31 kHz monitor. There's also no NTSC color changes like you see in the S-Video shots, for better or for worse. Anyway, back to the original post...

Sometimes you want to use your actual retro consoles rather than emulating on a PC--particularly in cases where emulation quality is still relatively poor, such as Sega Saturn or Dreamcast--but you still want to get the highest quality possible, which brings us to:

BROADCAST MONITORS

Broadcast monitors are high-resolution CRTs that were used by video professionals, such as broadcasters and video editors, to preview high-quality signals during the production process. They cost thousands of dollars new but are now cheap as dirt (relatively), since those professions have moved on to digital/HD signals and formats. Sony's PVM and BVM series of monitors are the most well-known and sought-after among retro gamers and, as such, often command a higher price than some similar products from other manufacturers. Nevertheless, the *VMs and other similar broadcast monitors tend to come with a variety of high-quality inputs, including one or more RGB equivalents (though often with separate sync, which can require conversion from, say, SCART). Another nice thing about these monitors is that they tend to come with nice, flat sides, unlike most TVs, which allows them to be rolled onto their sides easily for TATE mode games, like shooters.

Broadcast monitors are available in sizes up to 30" or so, though models that large are extremely hard to find and tend to be quite expensive, even now, due to their rarity. They are also very expensive to ship, due to their weight, which means many of the auctions on eBay are local-pickup-only (and tend to be in California...). The smaller models of 20" or less are much more common, and can usually be had for between $200 and $300 dollars at the time of this writing. A direct RGB connection from a console to one of these monitors should produce a picture as glorious as the aforementioned PC-VGA-to-240p-31-kHz setup, only without the hassles of modelines, hacked drivers, etc. Unfortunately, I don't have such a monitor, so I can't share any pictures :(

In the cases of either the 31 kHz or broadcast monitors, I personally find the image to be a bit sterile and actually prefer the 15 kHz option. I have opted to use the S-video-out on my video card for the convenience it provides, and the quality degradation is only about as bad as choosing bilinear vs nearest neighbor scaling in an emulator (i.e., fine for me, unbearable for perfectionists and pixel-lovers).

UPDATE (4/13/2015): I recently picked up a PVM 20M2U 20" monitor and posted some closeup shots on this page. The picture is indeed awesome and actually sits somewhere between regular SD/CGA displays and high-res 31 kHz monitors in "sterility" and how crisp the scanlines render.

Anyway, here are some more PC-VGA-to-240p-31-kHz pics :D



Good detail shot of the scanlines and the black gaps visible between.
This is what happens to SNES pseudo-hires transparency (bsnes) for some reason :/








Some other considerations that I will add to this post soon: CRTs for 480p and higher consoles (PS2, Dreamcast, 360, etc.), 31 kHz at 1024x768 (shaders vs the real thing), I plan to add a decision-making flowchart with approximate costs at some point, as well.

Cari Farmasi

Farmasi Di Kuala Lumpur dan Selangor Selangor / KL Area NO SHOPS NAMES ...