• Please review our updated Terms and Rules here

CGA video - is snow / blinking normal?

alank2

Veteran Member
Joined
Aug 3, 2016
Messages
2,264
Location
USA
I got the replacement CGA card in today and it works with a couple of things happening. The first is that if I launch the norton commander, there is a significant amount of snow going on, little red horizontal lines briefly if I hit Ctrl-O to make the menus come/go away.

Also, if doing scrolling like a long directly, the top half of the display blinks very quickly between the image and black.

It is definitely slower than the EGA card, but no more issues with software taking it into EGA mode with the CGA monitor at least.

Are these things normal with CGA?
 
Snow is to be expected with a CGA card which was one of the major flaws of the CGA design. Having the screen flicker during scrolling was another flaw. Yes, what you are seeing is normal.

There are methods to reduce both. Check with programming texts from the mid-80s. Some software had CGA command line switches that implemented the techniques to reduce the amount of snow and flicker. There is a trade off that the software would be a bit slower.
 
Last edited:
The blinking is normal, and some snow is normal; this is the result of writing to display RAM while the CRT refresh is in progress. If your program only writes to the display RAM during vertical retrace you can avoid this, but it slows down display updates so many people choose to live with the snow. There were some cards that used special tricks to avoid this (not sure what, dual-ported RAMs maybe?). With EGA it became common for snow/flicker to be a non-issue.

It sounds like your CGA card may have an above-normal amount of snow. It might be using RAM that is just too slow for your bus speed, is it perhaps a card made for a 4.77MHz bus but you're using it in a system with an 8MHz bus?
 
It might be using RAM that is just too slow for your bus speed, is it perhaps a card made for a 4.77MHz bus but you're using it in a system with an 8MHz bus?

This could be the case, it is an AT 5170 @ 8 Mhz. Is it ok to run an original IBM PC style CGA card in the AT? Will the increased speed hurt it at all?
 
..., it is an AT 5170 @ 8 Mhz. Is it ok to run an original IBM PC style CGA card in the AT? Will the increased speed hurt it at all?
IBM's announcement letter for the 8 MHZ versions of the IBM 5170 is at [here].
Included in its 'features' section is, "Color/Graphics Monitor Adapter".
 
The usual method of avoiding snow at the higher resolutions and 80x25 text on the original CGA cards was to poll the 6845 and wait for the retrace interval, do your writing to the CGA buffer. Since the display is blanked during retrace, you get no snow, but at the expense of having to wait for it.

Later third-party CGA implementations didn't have this restriction. This is one of the reasons that the MDA could update the text display faster than the CGA.
 
Are these things normal with CGA?

Yes, as others have noted. Because video memory on the IBM CGA isn't dual-ported, when the CPU and the video card need access to the same byte of video RAM, the CPU wins; the card ends up reading a random value and that's what you see onscreen.

IBM's fix for this in the BIOS screen update routines was to write characters during horizontal or vertical retrace (when the corruption wouldn't be visible), and blank the screen during larger video RAM updates (when it otherwise would have been avoidable). That's why the upper half of the screen "blinks out" when scrolling in DOS.

A lot of software got around the BIOS' slow display update speed by writing to the screen RAM directly. However, if they weren't careful about when they updated the RAM, you'd see "snow" in the character cells that were being updated.

Most clones eliminated this issue; the PCjr and Tandy 1000 series don't exhibit CGA "snow". Some CGA clones did not; the Olivetti M24 (and rebranded systems) exhibits the same "snow" problem as original CGA.
 
Back
Top