• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

VGA driver/cards that support 1 bit, 4 bit colour depth

ynari

6502
I thought at first support for limited colour depth was dependent on Mac OS version, but it's also dependent on the card. Is there a list of cards that definitely support 1 and 4 bit depths, for old 2/16 colour games or apps?

Is there a 'generic VGA' driver that can be switched to in Mac OS?

Technically some of the cards that don't list those depths should support it, for example the PowerMac 4400 I'm using includes an ATI Mach 64 chipset. It's a VGA compatible chipset, and therefore must support 640x480x4 bit colour (standard VGA resolution) and 640x480x2 bit colour (VGA standard resolution, to be compatible with MCGA high res).

Whether other frame buffer features/colour picking support are required to be compatible with Mac OS is a different matter, of course...

 
I think it's a combination of video card + driver in whether or not it'll allow such color depths and resolutions.

My IIci's Radius PrecisionColor Pro 24XP does all the color depths from 1-bit to 24-bit.  However, my SuperMac video card doesn't do 1-bit or 4-bit, even though it's technically capable of doing so. :-/

Perhaps look for an older Radius brand PCI video card?  Might give you what you need.  Or perhaps someone else here might know definitively which video card would work.

 
640x480x2 bit colour (VGA standard resolution, to be compatible with MCGA high res).
Nitpicky to point this out I'm sure, but MCGA is actually *1 bit* color, not two. 2 bits give you four colors. (00, 01, 10, 11). 2-bit color was technically a thing VGA cards supported, however, because VGA was fully backwards compatible with EGA which supported both two-plane and four plane color depths for its top resolution. (Reason for the 2-plane support was that EGA cards shipped with as little as 64k of RAM.)

This does raise a question for me, though. Does anyone know off the top of their heads whether the 4/16 color modes on classic Mac video cards used "chunky" or "planar" memory addressing? Now that I think about it I'm *pretty* sure they're chunky, which would be a legitimate reason why a VGA-oriented chipset might not support less than 256 colors. (Or might support one bit and 8 bit, but nothing in-between. I don't *think* "chunky" 4/16 color modes are part of either VGA or the VESA SuperVGA standard... but I could be wrong.)

 
Macs generally support chunky graphics in color modes, the video cards usually had the memory for it (its also easier for the hardware to handle). A sharp contrast to the Amiga, which was strictly planer. Running 640x480x256 colors on an AGA Amiga 4000 was laughably slow when I tried it.

 
(its also easier for the hardware to handle)
Well, strictly speaking "chunky" can be either easier or harder for the hardware, depending on what the memory architecture is and whether the color depth is an even division of the VRAM's word size (*), but it's usually easier for *programmers* to understand. (There's something to be said about having all the information for a given pixel residing in a single byte/word rather than scattered across multiple pages.)

VGA, as in the original IBM VGA, was strictly a planar standard, with the exception of the 320x200x256 color mode 13h, and even that was implemented at the hardware level in a sort of tricksy manner to work around the fundamentally planar architecture of the video generator. I *believe* that SVGA cards that supported 256 colors at greater resolutions can do it using *either* planar or chunky-linear arrangements. (The original VGA hardware can do planar 256 color modes, often referred to as "Mode X", but the BIOS doesn't support it.) This article confirms that the original 16/256 color Mac II video card used a "Chunky" layout, so... yeah, I would in fact not be completely surprised to discover that there's a real hardware limitation that prevents Macs that use VGA-descended chipsets from using color depths less than 8 bit. It's perfectly *possible* that some SVGA manufacturers built chipsets that support arbitrary bit-depth chunky modes, but if they did... it would have been specifically for non-PC applications, I guess?

(* I note this because 8-color planar systems with three planes weren't that uncommon way, way back in the computer stone age; systems like the Tandy/Radio Shack Tandy 2000 and quite a few other late CP/M-early MS-DOS era RGB systems used it. In those cases each plane mapped directly to the Red/Green/Blue line to the monitor with no palette register in between. An 8 color "chunky" system is awkward because of course an 8 bit byte of VRAM doesn't divide into an even number of 3 bit pixels. Planar is more efficient in this case because with it each byte holds 1/3rd of the information for eight pixels, and planar arrangements can sometimes enable some bonus tricks that can accelerate screen updates. For instance, if we take the hypothetical case of a 3 plane arrangement where having a "0" at a pixel location on all three planes will equal black and a "1" at all three will make a white pixel, you can do clever things like having a hardware register that allows the user to select that a given write will affect more than one plane. So, like, if you wanted to draw a white figure on a black background instead of having to do three separate writes to place the same pattern of on-and-off pixels on each of the three memory planes you could just say "this write applies to all three" and splat it on there once. VGA and EGA actually allow this kind of trickery, which is why Mode X was actually pretty popular with game programmers despite being "unofficial". )

 
Last edited by a moderator:
Back
Top