Live data from Hacker News

HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

yeokhengmeng.com

21–30 of 55 posts

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#21
post #10

I imagine a PC with a Graphics Gremlin and either a Snark Barker or Snood Bloober for audio, is going to be quite the hipster toy to have, one of these days .. all this great old, retro, PC hardware designs!

I refuse to believe Snark Barker and Snood Bloober are real device names, what a funny time in computing that was.

"Sound Blaster" was the original funny name - these are both derivations in a modern style, given to clones of that ol' sound card .. and yeah, they are hilarious names, and I hope the trend sticks, personally .. the world tires of X3000-style naming conventions, I'd wager, and for fun things like sound cards and video cards, a bit of naming whimsy would be welcome.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#22
post #17

Earlier quoted context omitted.

Based on what you said, you didn't actually look at HDMI protocol, only the protocol exposed to your HDMI encoder chip. You could have such a protocol on Thunderbolt 3 encoder chip. FWIW, yes HDMI is still pretty simple, but not as simple as you describe it. Even though there are 3 pairs of data it's not one pair R, one pair G, one pair B (highest-bandwidth HDMI uses 4 pairs), it's just one data bus. The data pairs a…

That's only the case in the (relatively) shiny new 2.1 spec with FRL. Prior versions are TMDS with 3 channels for red, green, blue, along with a clock. The audio and InfraFrames slot into the data islands in blanking periods on those signals.

Thanks for the complementary infos. YCbCr420 (which you can't just mux on the channels directly?) dates back to HDMI 1.4 though

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#23
post #17
post #4

I've worked on something similar while in college. HDMI is actually a fairly simple protocol, based on VGA. It still has scanlines and such, but the signals are digital instead of analog. So instead of a RAMDAC, you have the HDMI encoder chip. You typically need control some i2c interface to set the HDMI encoder chip in the correct mode, but that's about it.

Based on what you said, you didn't actually look at HDMI protocol, only the protocol exposed to your HDMI encoder chip. You could have such a protocol on Thunderbolt 3 encoder chip. FWIW, yes HDMI is still pretty simple, but not as simple as you describe it. Even though there are 3 pairs of data it's not one pair R, one pair G, one pair B (highest-bandwidth HDMI uses 4 pairs), it's just one data bus. The data pairs a…

> Based on what you said, you didn't actually look at HDMI protocol, only the protocol exposed to your HDMI encoder chip.

You are correct. Though as part of my studies (and curiosity, of course) I did end up analyzing the signalling protocol. The side-effect of standardizing line protocols is that it offers an abstraction for the engineers working with it. I didn't have to understand the signalling methods per se to use HDMI in my project.

> FWIW, yes HDMI is still pretty simple, but not as simple as you describe it.

I should have added that at the time I used it, HDMI was still in the 1.0 spec (1080i, 60Hz max), which was effectively DVI. Much has changed since then.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#24
post #10

Earlier quoted context omitted.

I refuse to believe Snark Barker and Snood Bloober are real device names, what a funny time in computing that was.

"Sound Blaster" was the original funny name - these are both derivations in a modern style, given to clones of that ol' sound card .. and yeah, they are hilarious names, and I hope the trend sticks, personally .. the world tires of X3000-style naming conventions, I'd wager, and for fun things like sound cards and video cards, a bit of naming whimsy would be welcome.

Kids nowadays will never understand how cool it was to have a Sound Blaster, an Athlon Thunderbird and Voodoo graphics.

I might be nostalgic, but to me it sounds much cooler than having a 11700k with a 4090 nowadays

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#25
post #22

Earlier quoted context omitted.

That's only the case in the (relatively) shiny new 2.1 spec with FRL. Prior versions are TMDS with 3 channels for red, green, blue, along with a clock. The audio and InfraFrames slot into the data islands in blanking periods on those signals.

Thanks for the complementary infos. YCbCr420 (which you can't just mux on the channels directly?) dates back to HDMI 1.4 though

As the source device, you can simply choose not to send YCbCr420.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#26
post #11

Are there any recommended made to oder PCB services if you just want a card? Googling around seems to be a lot of options all over the world but maybe some HNers have experience with some of them.

JLCPCB has worked for me. There are others, but I haven't had the need to look elsewhere. OSHPark is another I recall.

https://jlcpcb.com/ https://oshpark.com/

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#27
post #11

Are there any recommended made to oder PCB services if you just want a card? Googling around seems to be a lot of options all over the world but maybe some HNers have experience with some of them.

JLCPCB has worked for me. There are others, but I haven't had the need to look elsewhere. OSHPark is another I recall. https://jlcpcb.com/ https://oshpark.com/

And PCBWay.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#28
post #4

I've worked on something similar while in college. HDMI is actually a fairly simple protocol, based on VGA. It still has scanlines and such, but the signals are digital instead of analog. So instead of a RAMDAC, you have the HDMI encoder chip. You typically need control some i2c interface to set the HDMI encoder chip in the correct mode, but that's about it.

It's worth mentioning that HDMI encoder chips are actually quite difficult to get hold of as a hobbyist; the HDMI association prohibits their sale to anybody who has not signed the relevant NDAs, paid membership fees and whatnot. The project shown here gets around this by using a freely available DVI encoder chip instead, which works fine (the HDMI specification mandates backwards compatibility with DVI) but lacks support for a number of HDMI-only features such as audio and higher resolutions.

The only HDMI encoder I have seen so far with easily accessible (i.e. leaked) documentation is the CAT6613/IT6613 from ITE, which also happens to be available for purchase in single quantities from a number of Chinese retailers. It seems to be used in the OSSC and several FPGA development boards, so it's about as close to being an unofficial standard for open source projects as it could be.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#29
> The frequencies and connectors used by CGA and MDA are no longer supported by modern monitors hence it is difficult for older PCs of the 1980s era to have modern displays connected to them without external adapters.

Some CGA ran over composite, and there's plenty of modern small TVs with a composite input. It's perfectly fine to use a TV as a computer monitor. (I do!)

> This analog-to-digital conversion will also lead to an inevitable loss in video quality.

Oh, now we're splitting hairs! This is super-low resolution, super-low colorspace. CGA was (at most) 16 discrete colors. In many situations it was 4 colors with 2 pallets to chose from. The CGA port was also digital, so I don't understand where the "loss in video quality" argument comes from.

IMO: I don't "get" this. You're no longer running "vintage" hardware; yet a lot of vintage hardware has limited lifespan and may become unrepairable if/when there's degradation inside the chips themselves.

If someone is going to go through all this trouble, it makes a lot more sense to emulate the whole computer.

Re: HDMI ISA graphics card for vintage PCs by improving the Graphics Gremlin

#30
post #7
post #4

I've worked on something similar while in college. HDMI is actually a fairly simple protocol, based on VGA. It still has scanlines and such, but the signals are digital instead of analog. So instead of a RAMDAC, you have the HDMI encoder chip. You typically need control some i2c interface to set the HDMI encoder chip in the correct mode, but that's about it.

I remember i2c support was added to the Linux kernel. I never understood what it is. Next in line is BPF, which is also unclear.

I2C is basically "USB for things where USB would be overkill". It's a standardized protocol [1] that allows for one host to communicate with up to 128 different devices on a shared serial bus consisting of two wires. The specification does not define any discovery mechanism or higher-level functionality on top of basic packet sending and receiving, so I2C is meant to be used in cases where the host already knows what is connected and has the appropriate drivers set up (hence why embedded Linux devices typically use a "device tree" or similar configuration file to tell the kernel about their I2C hardware). Many of the chips used in modern electronics are either controlled entirely via I2C or use it as a configuration port in addition to a separate high-bandwidth interface for data; the accelerometer, power management chip, audio DAC, display and cameras in your phone all have I2C interfaces.

Another use case for I2C is device identification: since I2C-interfaced ROMs are so cheap, it's common to embed them in various types of peripherals and have the host read them out to retrieve information about the peripheral. This is how your PC gets to know which resolutions are supported by your monitor [2] (VGA, DVI and HDMI all have dedicated I2C pins for this purpose) and which type of RAM you have installed [3], for instance.

[1] https://en.wikipedia.org/wiki/I%C2%B2C

[2] https://en.wikipedia.org/wiki/Extended_Display_Identificatio...

[3] https://en.wikipedia.org/wiki/Serial_presence_detect

Post reply on HN