Mda graphics card
Posted by roiber08@reddit | vintagecomputing | View on Reddit | 22 comments
Following my yesterdays question, I saw some people talk about trying to use a mda card, like hercules, instead of the vga one I have. So here is my question, would it be possible to put a hercules graphics card, install some text based operating system like Linux and use it? Also, is there a way to check if my motherboard is compatible with those types of cards?
canthearu_ack@reddit
Not in this computer, at least not without some pretty radical hacking.
As far as I know, there were no display adaptors with TTL monochrome output, that were made with a PCI interface.
For that, you need a much older computer, with an ISA bus.
Additionally, you will need a TTL monochrome monitor compatible with MDA. Or failing that, something like a RGB2HDMI to convert the TTL display signal back to HDMI output.
Now, should you get the older computer with an ISA bus, a MDA or Hercules monochrome display adaptor, and a TTL monochrome display (or converter), you could indeed install Linux of an appropriate vintage on it, as long as your other system specifications were good enough.
I distinctly remember having a 486 Linux computer back in the day with a monochrome output that I used to do some programming on. It worked nicely!
roiber08@reddit (OP)
I wonder, would a commodore C64 work with it?
olifiers@reddit
The C64 outputs Y/C and Composite, not the Video + Intensity + H and V sync that the MDA needs. To attach a C64 to an MDA monitor would be as much trouble as attaching a VGA to an MDA, with signal processing, conversion and whatnot.
canthearu_ack@reddit
The biggest problem is that the C64 outputs 15khz horizontal sync output (PAL/NTSC compatible) whereas a Monochrome display will only accept an 18khz horizontal sync frequency.
They are just fundamentally incompatible with each other.
olifiers@reddit
Indeed, thus why the 'signal processing' mention. It can be done with a Raspberry Pi Pico, though.
Scoth42@reddit
Commodore 64 has a completely different architecture with a completely different bus interface and hardware handling. In theory you could build an appropriate adapter but you'd need a ton of glue logic to handle the bus and interrupts and then write software to use it. Nothing would work out of the box.
Useful_Resolution888@reddit
surely a 486 with Mda or Hercules would be an anachronism? VGA was a well established standard by then. Maybe you had a monochrome VGA monitor.
For MDA or Hercules on a period-appropriate computer op would be looking at a 286 at the newest, which would mean that no actual version of Linux would run. They might have some success with elks (which I've run recently on a 286) or old versions of Minix (which I used on similar hardware back in the 90s) - but both of these are very limited systems.
Stoney3K@reddit
I wonder if MDA was even still supported by 486 or newer BIOSes. On the MDA and CGA the BIOS was responsible for initializing and talking to the card, as the cards themselves were relatively simple.
canthearu_ack@reddit
No, MDA is absolutely supported on most if not all 486 ISA motherboards!
The PC world is notoriously slow at dropping old standards!
PoloGator@reddit
MDA even works on many Pentium Pro motherboards. I've got a dual PPro Tyan board running MDA without issue.
canthearu_ack@reddit
Makes me want to pull out that Athlon XP motherboard that I re-added the ISA port to and see if I can get MDA/Hercules working on that!
Scoth42@reddit
They would have been slightly anachronistic perhaps, especially by the middle to late 486 era, but not unheard of. Especially for low-end or more business-oriented custom machines.
There was also the somewhat rare and unusual use case of dual monitors - monochrome cards lived at a different memory address space than VGA so it was possible to have both a VGA card and MDA/Hercules card in the same system, and a handful of applications supported it that way. Not generally as an extended desktop like you'd think of today, but something like the text of a spreadsheet on the sharp monochrome card and a nice color chart on the color monitor.
sarajevo81@reddit
If you bought a computer in early 90s, it came with a MDA-like card and the cheapest amber monitor... unless you paid over the advertized price. Probably there were thousands of those cards around.
canthearu_ack@reddit
I was poor at the time. VGA monitors were expensive back in the 90's, and didn't grow on trees like LCDs seem to these days!
You could scrounge a 486 motherboard from the systems schools were throwing away, or what people were selling for cheap, but VGA monitors wore out quicker and were rarely avaliable cheaply.
Plus they were difficult to move for people without a car (like me when I was a kid and poor).
roiber08@reddit (OP)
Hmm okay, will look more into that topic, thanks!
grateparm@reddit
I have a socket 1151 single board computer on picmg 1.0 plane, now I'm curious if I can get it to use a Hercules card
michaelpaoli@reddit
Maybe, generally need a full-length full-height ISA slot, and I'm not seeing that there, looks like you've got PCI, and, don't know that Hercules, or anyone, made MDA graphic adapters for PCI - PCI came along long after VGA.
Will depend on your CPU, and other resources. May not be feasible or doable at all for older low-spec machine. But you might use FreeDOS or the like.
Not only need hardware compatibility, but also BIOS. Later versions of BIOS dropped support of MDA. E.g. old motherboard I have, I didn't update to the latest versions of BIOS they put out, as they dropped MDA support, and I was still using MDA.
fondow@reddit
If using monochrome is more a priority on this computer than using your mda monitor, there is this adapter to transform a vga color signal in a vga monochrome one: https://www.tindie.com/products/spark2k06/monochromevga-2/
Just tp be clear,you would still need a compatible vga monitor.
uid_0@reddit
Re: your Linux question. You could get an older version of Linux or BSD to run on that, but that machine will not have the computing horsepower, RAM, or disk storage to run a modern Linux distro.
Also, is that a Microchannel machine? Linux was notoriously fickle about hardware back in the day, and Microchannel was always the red-headed stepchild, so you might have quite a project on your hands there.
olifiers@reddit
You can make this work, but will require some smarts on your end, plus electronics know-how. It's not hard, but will take some elbow grease.
First, to use your monitor itself and see it working, I suggest you check this github below. It allows you to connect an Arduino board to your monochrome monitor and see it working. It's *super* simple and will get your monitor displaying stuff at long last:
https://github.com/daisyUniverse/Pico-MDA-Driver
Then, you check out this adapter at Adafruit, which does the opposite of what you're trying to do: it converts signal from an MDA board to a VGA monitor. In this code you'll find all you need to build the opposite adapter, one taking VGA output and converting the signal to MDA:
https://blog.adafruit.com/2025/11/04/display-ibm-cga-ega-and-mda-video-on-vga-monitors-with-mce-blaster-raspberrypi/
You'll be running a Raspberry Pi Pico or Pico 2 attached to a modern video board, and using the Pico to convert the signal it receives into something the monochrome monitor can handle. Any PCI card with a VGA output will do.
grislyfind@reddit
There were ISA cards like the ATI EGA and VGA WONDER that could output a range of scan rates including MDA; I don't remember seeing PCI versions. There was a utility called Powerstrip that could sometimes force VGA cards to do abnormal scan rates.
muse_head@reddit
The standards changed a lot and pretty quickly during the 80s-90-00s, the monochrome monitor you have is from a different era to this computer and just can't realistically be made to work with it.
MDA was common during the early to mid 1980s, but your computer looks like it's from around 2000.
If you get an older computer with ISA slots you could install a MDA / Hercules card and use your monitor. But it won't be period appropriate unless it's a PC/XT (early to mid 1980s era), and it probably won't run any operating system apart from DOS.