• Please review our updated Terms and Rules here

CGA (digital) to VGA/Component/HDMI

mbbrutman

Associate Cat Herder
Staff member
Joined
May 3, 2003
Messages
6,408
I'm looking to make my PCjr more portable; lugging around a CRT is irritating.

Composite video is a dead end; the color encoding looks absolutely nasty on a color monitor. Turning off the color makes the output acceptable, but I'd like to have color.

So it would seem that the only path is to convert the digital TTL level CGA signal to something more modern. I see a lot of devices out there, most designed for arcade games. What's the current "good enough" solution for older PCs that want to use a more modern monitor?
 
I see a lot of devices out there, most designed for arcade games. What's the current "good enough" solution for older PCs that want to use a more modern monitor?

The dirt-common GBS-8220 family of arcade scalers works "okay" for most NTSC-frequency computers with RGB output. The issue with it is out of the box it only does analog RGB, not digital RGBI, so to use it properly with CGA you need an additional dongle. There are schematics out there for making your own with little more than a few resistors (there seems to be mixed opinions about whether it's also necessary to include an IC to turn the separate sync on the CGA port into composite sync or a passive mixer will do), and they mostly work fine with the one exception that the CGA "Brown" color that corresponds to the RGBI code for "Dark Yellow" is actually rendered as dark yellow. This can be fixed by adding some additional logic.

If you don't want to DIY one GGLABS makes an adapter that includes the brown fix:

https://gglabs.us/node/2022

Which they sell on eBay for around $50. (Which seems perhaps a little steep considering the whole GBS board sells for around $25 bucks, but, labor of love.)

A high-end alternative is the MCA2VGA project, which uses an FPGA to do interesting video conversion optimized for old PCs. It's an open-source project, here's an outfit selling a complete pre-assembed unit for around 90 euros, sans case:

https://www.serdashop.com/MCE2VGA

It certainly looks neat, and the EGA high-res support is something the GBS boards can't do, so it might well be worth it.

I can't vouch for a GBS-8220's quality with PC RGBI, as until very recently I didn't have anything that did RGBI. I do have one I use with an Apple IIgs, and I'll say it's... okay. That machine is probably the worst possible case for it because the IIgs's OS relies heavily on dithered colors to render a 640 pixel-wide GUI; the GBS's major fault is it's actually "too sharp" and renders what shows up as a solid hue on the original Apple monitor a nasty eye-killing checkerboard. Looks fine in games and text mode for the most part, though.
 
Hey Mike,

I built and sold a bunch of THESE. I even sold some in the consignment area of VCFPNW last year(2018 ). Remember, I got your permission to display them there along with my 5155!

If you want something ready made, THIS is based on the same design and same FPGA. You can even get it with an enclosure!!

These Things ARE AWESOME!! Sorry for yelling, but I must express myself about this!

Greg

Edit, I see the previous post mentions the Serdashop unit which is the one I linked second.

PS
I have an extra one that I'd be willing to let you try out. If you like it, you can either buy it or get one of the Sedashop units.
 
Last edited:
The MCE2VGA boards are nice, but be aware they are meant as a display replacement; the output signal is both scaled and time-shifted. For 99% of users who want to use a VGA monitor and don't care about frame accuracy, they are perfectly fine.

My needs are different; I need a pure capture path that doesn't alter resolution or framerate. I use the gglabs unit to convert TTL to analog, then I capture the resulting output with an epiphan capture device.

eeguru was working on a pure digital solution a few years ago; I continue to wait for that with baited breath.
 
The MCE2VGA boards are nice, but be aware they are meant as a display replacement; the output signal is both scaled and time-shifted...

While these statements are both true, The scaling works PERFECTLY for most things and the time-shift is imperceptible. At least to me. I have it connected to the DB9 on the back of the CGA on my 5155. The internal monitor is connected to the BERG connector on the same CGA card (Composite). I can see no time lag from one to the other. Please don't make me yell again Trixter;) Most of us are not as picky as you. THESE THINGS ARE AWESOME!! Oops I did it again.

Greg

PS
Mike, I'll even pay shipping one way, if you wan't to try one out.
 
eeguru was working on a pure digital solution a few years ago; I continue to wait for that with baited breath.

Have you seen the "Open Source Scan Converter", or OSSC?

http://junkerhq.net/xrgb/index.php?title=OSSC

It's only does line doubling/tripling so there's almost no lag (it claims "less than two scanlines", and it can also do straight digitization and output plain 240P to output devices that can handle that) and it has direct HDMI/DVI output. It's analog RGB again but I don't see any reason it wouldn't work with the same adapter you'd use for a GBS.
 
The dirt-common GBS-8220 family of arcade scalers works "okay" for most NTSC-frequency computers with RGB output. The issue with it is out of the box it only does analog RGB, not digital RGBI, so to use it properly with CGA you need an additional dongle. There are schematics out there for making your own with little more than a few resistors (there seems to be mixed opinions about whether it's also necessary to include an IC to turn the separate sync on the CGA port into composite sync or a passive mixer will do), and they mostly work fine with the one exception that the CGA "Brown" color that corresponds to the RGBI code for "Dark Yellow" is actually rendered as dark yellow. This can be fixed by adding some additional logic.

If you don't want to DIY one GGLABS makes an adapter that includes the brown fix:

https://gglabs.us/node/2022

Which they sell on eBay for around $50. (Which seems perhaps a little steep considering the whole GBS board sells for around $25 bucks, but, labor of love.)

A high-end alternative is the MCA2VGA project, which uses an FPGA to do interesting video conversion optimized for old PCs. It's an open-source project, here's an outfit selling a complete pre-assembed unit for around 90 euros, sans case:

https://www.serdashop.com/MCE2VGA

It certainly looks neat, and the EGA high-res support is something the GBS boards can't do, so it might well be worth it.

I can't vouch for a GBS-8220's quality with PC RGBI, as until very recently I didn't have anything that did RGBI. I do have one I use with an Apple IIgs, and I'll say it's... okay. That machine is probably the worst possible case for it because the IIgs's OS relies heavily on dithered colors to render a 640 pixel-wide GUI; the GBS's major fault is it's actually "too sharp" and renders what shows up as a solid hue on the original Apple monitor a nasty eye-killing checkerboard. Looks fine in games and text mode for the most part, though.

The GBS hardware actually doesn't require composite sync at all, the scaler IC on board can handle it just fine. It may be a limitation of the official firmware, but there is custom firmware for it now. Check github under user "ramapcsx2"
 
can't figure out for the life of me how to edit my post - I meant to say the scaler IC (Tiva Trueview 5725) can handle separate sync just fine
 
I can see no time lag from one to the other.

That's not what I meant by time shift. Sorry if I was unclear. I meant that the output of the MCE is fixed; while low-res modes are 60Hz, the MDA and EGA hi-res modes are 70Hz. In terms of lag, because the MCE is a framebuffer, it has at least one frame of lag. In terms of scaling, the MCE cuts off the top and bottom borders.

As I wrote earlier, "for 99% of users who want to use a VGA monitor and don't care about frame accuracy, they are perfectly fine."

Also, I'd recommend against using the GBS/Gonbes series of scalers. They's very cheap, but you get what you pay for. The OSSC is overkill, however it is a lag-free solution with many options.
 
Oh, I see. Actually, I was mostly kidding. Hence the ;) I did see your "for 99% of users who want to use a VGA monitor and don't care about frame accuracy, they are perfectly fine." I would bet the percentage would be even higher than 99!
 
In mild defense of the GBS/Gonbes scalers... they are only $20? I'd rate them as better than suffering through color composite if you need to deal with 80 column resolutions.

But, yeah, if intend to actually use your system much and can afford the extra money for the alternatives they're probably worth it.
 
GBS8220 with custom firmware is quite nice and offers very impressive performance for it's cost

it's still not on the OSSC's level, but for $20 it's no slouch
 
My issue with the Gonbes (and the MCE non-CGA support to a small degree) is that the scaling exaggerates scaling artifacts as seen in duplicated columns and rows. For 320x200 sources or 40-column mode this isn't that big a deal, but for 80-column text mode, it's visible. Since the shaded characters are used frequently in text programs (ie. ASCII #178), it can be very distracting. mbbrutman is a discerning user, so that's why I'm pointing this out.

All that being said, I think he should give the MCE a try, since it's plug-and-play, self-contained, and he can rewrite the firmware if he wants to change the scaling decisions or something. The gglabs unit + some other scaler is better quality output, but it requires two separate devices to manage (the ttl2rgb portion and the scaler portion).
 
I'm curious now about that custom firmware for the GBS, if it would allow any tweaks for better tuning the board to the IIgs. Unfortunately it's not exactly plug-and-play to set the board up to use it. Another thing for the "maybe sometime" list.
 
...the scaling exaggerates scaling artifacts as seen in duplicated columns and rows...
I don't think I've seen that with mine. Can you help me see if I can duplicate what your seeing on my rig? Specific application? ASCII #17 ?

Greg
 
So I'm in the same boat as the OP except mine is a Tandy 1000SX. Most of these solutions seem to be about $100 unless you want to get boards printed and do all sorts of other stuff, and even then it's not really less than about $50. I know there's the GBS board though I don't really understand how that would work since its analog RGB, not digital, so I guess it'd need another converter of some type in addition to the GBS board?

Are there any disadvantages to just adding a VGA card (that supports 8-bit ISA) and calling it a day?
 
So I'm in the same boat as the OP except mine is a Tandy 1000SX. Most of these solutions seem to be about $100 unless you want to get boards printed and do all sorts of other stuff, and even then it's not really less than about $50. I know there's the GBS board though I don't really understand how that would work since its analog RGB, not digital, so I guess it'd need another converter of some type in addition to the GBS board?

Are there any disadvantages to just adding a VGA card (that supports 8-bit ISA) and calling it a day?

I've been running a 8-bit VGA card (640 x 480) in my 1000SX since the early 90's.

This may help: https://www.lo-tech.co.uk/wiki/Tandy_1000SX_and_TX_DIP_Switches
 
Are there any disadvantages to just adding a VGA card (that supports 8-bit ISA) and calling it a day?

To my mind the whole point of a Tandy 1000 is the PCjr-esque graphics system. If you just want an XT with a VGA card I'd probably recommend a less quirky system as the starting point.

Re: digital vs. analog and a GBS board, yes, you need a converter. If you're not bothered by having the brown color look a little off you can make a completely passive one for less than $10 or so on perfboard. The Cadillac solution is the preassembled GGlabs unit that runs around $50 on eBay. (The schematics for making one like it are floating around and you could likewise probably perfboard one up very cheaply if that's your bag.)

I actually have a passive "wrong brown" RGBI adapter plug that a friend was churning out and selling in small quantities years ago around the house... somewhere. If I ever find it I'll be sure to try my GBS on my new 1000EX.
 
I'm in the background enjoying the discussion and trying to contemplate the finer technical points of it. As good as software has been to me, I'm really wishing I had more electrical engineering in my background. That's a topic for another thread though. :)

I'm definitely interested in 80 column text performance. Even the native PCjr RGB monitor is barely adequate for that; the dot pitch is pretty large. (I've gotten incredibly spoiled by flat panels ...)
 
Back
Top