An 8-bit ISA card with VGA, HDMI and composite video connectors

Upgraded Graphics Gremlin Adds HDMI Video To Vintage PCs

Although new VGA-equipped monitors can still be bought, the old standard is definitely on its way out by now, being replaced by high-speed digital interfaces like HDMI and DisplayPort. It therefore makes sense to prepare for a VGA-less future, as [Yeo Kheng Meng] is doing. He designed an 8-bit ISA display card with an HDMI output that enables even the very first generation of PCs to talk to a modern monitor.

The design is based on the Graphics Gremlin by [Tube Time], which is an 8-bit ISA display card that aims to be software compatible with the obsolete MDA and CGA display formats while outputting a clean VGA signal. [Yeo Kheng Meng] modified the board by adding a TFP410 HDMI bus driver and replacing the rarely-used 9-pin RGBI connector with an HDMI version. He also updated the HDL code for the Lattice FPGA, which forms the heart of the graphics card, to account for the new digital output. While he was at it, he also added a few features he was missing in the original product, such as the option to select the color displayed in MDA mode and the ability to output both HDMI and composite video at the same time.

The video below shows the updated card in action in an IBM 5155 Portable PC. The HDMI port connects to a modern monitor, while the composite video output is routed to the 5155’s internal CRT as well as a small color monitor on top. The IBM thereby joins a small list of retro computers that have received an HDMI upgrade — the Amiga 500 and PlayStation 2 being other examples. HDMI might be a lot more complex to work with than VGA, but luckily there are open-source implementations that do much of the work for you.

Continue reading “Upgraded Graphics Gremlin Adds HDMI Video To Vintage PCs”

CGA Competitors From The 1980s

[David Murray], aka The 8-Bit Guy, did an interesting video (embedded below the break) on the time line of PC graphics cards from CGA through to EGA. Not only does he explain the different offerings of the day, but also proceeds to demonstrate most of them.

It’s interesting to learn about some of the video modes that went basically unused in these cards. Even if board designers include high resolution modes and better color palettes, if software programmers don’t use them they are forgotten.

We were particularly impressed by a couple of examples he had that were full-sized, double-stacked ISA cards — those were beasts. Both CGA and EGA sort of withered when the 1990s arrived.

According to [David]’s research, CGA monitors continued to be used for some time even after EGA was introduced — primarily because of cost. It might cost you $400 to get an ATI EGA Wonder card, and that or more for an EGA monitor. Many folks just upgraded the card first, and took advantage of the fact that the EGA Wonder could drive CGA monitors.

If you are interested in the history and technology of these old cards, check out our coverage from 2016 where [David] does a deep dive into CGA cards and discusses, among other things, the CGA composite video mode.

Continue reading “CGA Competitors From The 1980s”

Picture of the setup described in the article, with PCI-E cards strewn around the desk, all interconnected, and a powered-up laptop, a large TV screen behind the laptop

This Laptop Gets All The PCIe Devices

Did you ever feel like your laptop’s GPU was sub-optimal, or perhaps that your laptop could use a SAS controller? [Rob Rogers] felt like that too, so now he has the only Dell Latitude business-class laptop that’s paired with an AMD RX580 GPU – and more. Made possible because of a PCIe link he hijacked from the WiFi card, he managed to get a SAS controller, a USB 3.0 expansion card, the aforementioned GPU and a dual-port server network adapter, all in a single, desk-top setup, as the video demonstrates.

First off, we see a PCIe packet switch board based on a PLX-made chip, wrapped in blue tape, splitting a single PCIe x1 link into eight. The traditional USB 3.0 cables carry the downstream x1 links to the four PCIe cards connected, all laid out on [Rob]’s desk. [Rob] demonstrates that all of the cards indeed function correctly – the SAS controller connected to a server backplane with whole 22 TB of storage in it, a few devices plugged into a USB 3.0 card, an Ethernet cable with an active link in the network card, and wrapping up the video showing 3DMark results of the RX580 clearly paired with the laptop’s mobile CPU. There’s four more spots on the PCIe switch card, so if you wanted to connect a few NVMe SSDs without the costly USB enclosures that usually entails, you absolutely could!

The setup on the desk, laptop-less, still interconnected and with the mini pci-e adapter visibleNow, there’s a reason why we don’t see more of such hacks. This seems to be a Latitude E5440 and the card is plugged into a mini-PCIe slot, which means the entire contraption is bound by a single PCI-E Gen2 x1 link, heavily offsetting the gains you’d get from an external GPU when, say, gaming. However, when it comes to the types and amount of peripherals, this is unbeatable – if you want to add an external GPU, high-speed networking and a SAS controller to the same computer that you usually lug around, there isn’t really a dock station you can buy for that!

Our collection of cool PCIe hacks has been growing, with hackers adding external GPUs through ExpressCard and mini PCIe alike, fitting PCIe slots where the factory refused to provide one, and extending the onboard M.2 slots for full-size PCIe cards. Nowadays, with these packet switches, it’s easy as ever to outfit any PCIe capable device with a whole slew of features – as this Raspberry Pi Computer Module motherboard with eleven PCIe slots demonstrates. Wonder how PCIe works, and why all of that is possible? We’ve written an entire article on that!

Continue reading “This Laptop Gets All The PCIe Devices”

Retro ISA Card Means Old, Slow Computers No Longer Need Old, Heavy Monitors

One thing about vintage computers is that they depend greatly on whether or not one can plug a compatible monitor into them. That’s what’s behind [Tube Time]’s Graphics Gremlin, a modern-design retro ISA video card that uses an FPGA to act just like a vintage MDA or CGA video card on the input end, but provides a VGA port for more modern display output options. (Actually, there is also an RGBI connector and a composite video out, but the VGA is probably the most broadly useful.)

Handy silkscreen labels make everything crystal clear. Click to enlarge.

Why bother making a new device to emulate an old ISA video card when actual vintage video cards are still plentiful? Because availability of the old cards isn’t the bottleneck. The trouble is that MDA or CGA monitors just aren’t as easy to come across as they once were, and irreplaceable vintage monitors that do still exist risk getting smashed during shipping. Luckily, VGA monitors (or at least converters that accept VGA input) are far more plentiful.

The board’s design files and assembly notes are all on the project’s GitHub repository along with plenty of thoughtful detail about both assembly and troubleshooting, and the Verilog code has its own document. The Graphics Gremlin is still under development, but you can also watch for the latest on [Tube Time]’s Twitter feed.

Thanks to [NoxiousPluK] for the tip!

VGA Graphics Card In 74xx Logic

Feeling nostalgic we presume, [Glen Kleinschmidt] set out to build a 640x480x64 VGA controller card from discrete logic chips. If we ignore the 512Kx8 Cypress SRAM video memory, he succeeds, too — and on a very readable, single page A3 schematic. The goal is to interface some of his older 8-bit machines, like the TRS-80 Model 1 and the BBC Micro, but for now he’s running a demo using a 20+ year old PIC16F877 micro.

[Glen] provides all the schematics, Gerbers, and C source code on his website should you be inclined to reproduce one for yourself. He has three versions in the works, with various capabilities (there’s a table on his website). As an alternative, one could always use an FPGA or a custom-built chip such as the SSD1963 to generate video for these micros, but sometimes the urge to go retro is too great to resist. We get the feeling that for [Glen], this is a project unto itself, and being able to interface it to his 8-bit computers is just a convenient excuse.

This isn’t [Glen]’s first retro project, either. Check out his analog computer “bouncing ball” project we covered back in 2017. Have you struggled with the build vs. buy decision, and how do you decide?

Continue reading “VGA Graphics Card In 74xx Logic”

Pushing Pixels To A Display With VGA Without A PC

[Ben Eater] is back with the second part of his video series on building a simple video card that can output 200×600 pixels to a display with nothing but a VGA connection, a handful of 74-logic chips and a 10 MHz crystal. In this installment we see how he uses nothing but an EEPROM and a handful of resistors to get an image onto the screen.

The interesting part is in how the image data is encoded into the EEPROM, since it has to be addressable by the same timing circuit as what is being used for the horizontal and vertical timing. By selecting the relevant inputs that’d make a valid address, and by doubling the size of each pixel a few times, a 100 x 75 pixel image can be encoded into the EEPROM and directly addressed using this timing circuit.

The output from the EEPROM itself not fed directly into the monitor, as the VGA interface expects a 0 V to 0.7 V signal on each RGB pin, indicating the brightness. To get more than three colors out of this setup, [Ben] builds up a simple 2-bit DAC that allows for two bits per channel, meaning four brightness levels per color channel or 64 colors effectively.

See the video after the link for the full details. While pretty close to perfect, a small issue remains at the end in the forms of black vertical lines. These are caused by a timing issue in the circuit, with comments on the YouTube video suggesting various other potential fixes. Have you breadboarded your own version yet to debug this issue before [Ben]’s next video comes out?
Continue reading “Pushing Pixels To A Display With VGA Without A PC”

Hackaday Prize Entry: An Open Source Graphics Card

For last year’s Hackaday Prize, [PK] tried to build a video card for microcontrollers and headless Linux systems. It was only 640×480 resolution VGA, but the entire project was designed around a CPLD communicating with a microcontroller over SPI. This prize entry was, by [PK]’s own admission, a failure. It was late, but now he’s had an entire year to perfect his design. That means he can enter version two of his VGATonic in The Hackaday Prize.

The VGATonic version 2 uses a Xilinx XC95144XL CPLD for the VGA timing, and an ATTiny 2313a to read the SPI bus. Video memory is four megabits of static RAM. That’ls pretty much all you need for the most basic VGA graphics card, and all of this is packed onto a 3×3 inch PCB.

You can do a lot with 640×480 8-bit graphics running at 25FPS. In the video below, [PK] has a ‘hello world’ of sorts, Doom, running on a Raspberry Pi 2 with his SPI graphics card. Yes, it’s a graphics card for the Raspberry Pi, and it looks really good.

Further refinements of the design will include some primitive graphics routines. Not OpenGL or anything fancy, just something to reduce the number of writes on the SPI bus. It’s a great project, and perfect if you want to add video out to an Intel Galileo or other microcontroller project. [PK] has a video demo, you can check that out below.


The 2015 Hackaday Prize is sponsored by:

Continue reading “Hackaday Prize Entry: An Open Source Graphics Card”