• Please review our updated Terms and Rules here

Another discussion of CGA/EGA on (relatively) modern monitors.

Moogle!

Experienced Member
Joined
Dec 14, 2008
Messages
120
Location
United States of America
I know this horse has been beat to death, but I stumbled across this video by 'Artifact Electronics' the other day where in the process of examining the old PC clone in question, the individual goes about connecting a CGA (though I actually believed that to be an EGA card when he shows it at the end, and where he mentions the 21Khz) to an ordinary Samsung Multisync LCD monitor, made long after CGA/EGA ceased to be relevant. I know the real old Multisyncs did this, obviously, as that's why they were called that, but I was shocked to see a modern one do it in the video.

Has anyone else experimented with trying this on other CRT or LCD monitors, using the analog or DVI connectors and maybe some resistors?
 
Thanks for the link, Chuck.

Everyone else, just to be clear, I am aware of the projects dedicated to this process, but this thread is about monitors that do it naturally. Also, I meant NEC Multisync. Samsung had Syncmaster.
 
Actually, support for 15 kHz video isn't a big surprise.
Modern monitors share a lot of circuitry with TV sets, and TV sets are supposed to support PAL and/or NTSC - and both are 15 kHz.
Some monitors have lower frequencies artificially disabled, but many don't, so it just works.
However, it's somewhat surprising to see that monitor support 21 kHz, as that's neither TV nor VGA, it's specific to EGA and nothing else.
And yes, that video card is a typical EGA clone, with 256 KB of DRAM.
 
Last edited:
Support for rates that low is actually quite common amongst modern LCD TV's -- even the giant 60"+ ones -- for one simple reason. It makes it easier to support old 480i broadcasts which uses the same pulse times as 240p. Same reason you can just make *nix modelines for 854x540p -- an unofficial / nonexistant mode -- and it works just fine.

In general so long as you get the VSYNC pulses 150 microseconds wide and your HSYCN at 8ms with a sufficient front and back porches it tends to work on modern displays.

Something I've been finding out by playing around is that the whole concept of "pixel clocks" is mostly BS used to make the math simple. So long as you have the sync pulses and porches the right width, and the correct number of scanlines for an existing mode output, you can make nearly any visible width you want on most any display. If you have full control over the "pixel clock" whilst outputting the horizontal data, you can even send 1920 wide to a CGA display... though the physical low ppi of the display makes it look as bad as 640 does on a color TV.

I was a little surprised to find that out... that the whole pixel clock thing is more fantasy than fact. Case in point right now I'm playing around using a Teensy 3.0 with a pair of SPI SRAM and a old Sierra RAMDAC to output 960x480 on a normal VGA analog and it works just fine on every display I'm throwing at it from an old mono IBM CRT really not designed to go past 640x480, to a 20" IBM CRT, to an older Dell 20" LCD, to my relatively new 42" media center LCD.

(the whole SPI SRAM thing is awesome, just switch them to QPI output and dump four bits each from two chips directly into the RAMDAC, all you need to do is make sure the driving clocks are right.)

Bottom line, if the sync pulses are within the displays rated range and of sufficient width, it tends to work... and modern displays -- pretty much all of them -- accept an absurdly wide range of horiz and vertical rates. LCD TV's often more so than CRT's thanks to the use of scan converters.

Just beware they usually take a full second worth of sampling frames to figure out what you're doing before they allow display after changing sync rates, and even the slightest hiccup in sync can cause them to go back into sampling with a blank display.
 
Last edited:
I think the earliest example of this was a fellow who figured out how to get a VGA image (monochrome) using nothing more than an ATMega8 MCU. Of course, it doesn't have enough memory for graphics, so text only.
 
I think the earliest example of this was a fellow who figured out how to get a VGA image (monochrome) using nothing more than an ATMega8 MCU. Of course, it doesn't have enough memory for graphics, so text only.

Yup, and nowadays people are pushing 120x60 4 color graphics out of a ATMega328p. I could almost use that cheap little bugger as my CRTC, if not for the need of a specific timing in a 19.2khz pixel clock just to get me to 480 width... with 5 clocks allowing me to control that timing on two lines 96mhz is my minimum.

I could try playing with clock delays, but honestly something like a bottom end Maxim ARM4 at 96mhz costs the same as the 328p these days should I reach the point of making these for other people. (and right now I have a teensy 3.0 sitting there gathering dust)
 
Yeah, ARM is so cheap that I don't even consider earlier families like MIPS or ATMega or PIC anymore.

One of these days, it might be fun to play with some of those 3 cent MCUs. Heck the solder would probably cost more.
 
Back
Top