VOGONS


CRT Terminator Digital VGA Feature Card ISA DV1000

Topic actions

First post, by clb

User metadata
Rank Member
Rank
Member

crt_terminator_showcase.jpg

Hello to everyone at Vogons!

There were so many times that I thought this day would never come, but I am pretty excited to finally, after almost 1.5 years of intense research and development, to announce a project that me and my friends in Finland have been busy working on.

Meet the "CRT Terminator"!

It is a new expansion card intended to improve the video quality of old XT, 286, 386 and 486 range of PCs with ISA video cards by going all digital.

How does that work, you ask? Well, we finally put that VGA Feature Connector bus to use, that everyone's been pondering about at one point or the other! The VGA Feature Connector bus outputs an all-digital (albeit extremely nonstandard for modern days) video signal. CRT Terminator picks that signal up, and converts it to a form that modern flat panel displays will be more happy to accept.

We have set up a project web page at

https://oummg.com/

to tell you more about the device. Hopefully it will once and for all enable retro enthusiasts to skip tinkering with problematic analog -> digital video converters, and just stay digital through the whole video pipeline to obtain the best possible video quality. It is kind of remarkable that IBM had the foresight back in 1987 to actually make this possible!

There will still be some way to go until the project will be finished, but we just couldn't keep this under wraps any longer, and really want to get the word out there to you all. We are currently going through late stages of development and the goal is to transition to a release candidate phase in the coming months.

While we have to admit that the current electronics availability, economy and lead time situation does not look particularly great, we are optimistic that with a bit of patience, good things will come. Hope this gets you excited for what 2023 will bring!

Doesn't that Cyrix 486 PC just look lovely in that setup! 😀

Reply 1 of 71, by Tiido

User metadata
Rank l33t
Rank
l33t

That is a quite nice idea, direct access to pixel bus that goes to RAMDAC. I guess some info such as what CRTC gets programmed to is spied from ISA for video mode matching etc. ?

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 2 of 71, by clb

User metadata
Rank Member
Rank
Member

Thanks,

the video mode information does come through on the VGA Feature Connector bus (hsync, vsync and display enable pins). CRT Terminator does listen to the ISA bus as well, mostly to capture the VGA palette information, which is not present on the Feature Connector.

Reply 3 of 71, by Jo22

User metadata
Rank l33t++
Rank
l33t++

This is very interesting. Kudos. 😎👍

While I'm more a fan of non-raw images normally, I do realize it's potential.
The clean digital output can be better processed/scaled by today's computer monitors and it
could also be used by future projects as an input for CRT simulator devices.

In so far is this a very useful invention, I think, my honest compliment. 👏😃

PS: The choice of Sam&Max alone deserves a thumb up, already. 👍

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 5 of 71, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

Yah but the modes that are most problematic to display with simple convertors tend to be 256 color low res modes? Higher res higher color modes can go through different convertor?

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 6 of 71, by gen_angry

User metadata
Rank Newbie
Rank
Newbie

Interesting.

My Voodoo 1 doesn't have this connector but my PCI S3 Trio64V2/DX does have a 26 + 6 pin header labelled "Feature Connector". So this isn't just for ISA/VLB cards?

Reply 8 of 71, by clb

User metadata
Rank Member
Rank
Member
maxtherabbit wrote on 2023-02-06, 02:32:

very cool idea, but doesn't the VESA feature connector max out at 256 color?

Based on our research, the VGA Feature Connector seems to always output the exact same video modes as the VGA adapter supports. So any ISA SVGA cards that support e.g. 16-bit/64k color modes (such as Cirrus Logic CL-GD54xx cards) will then output such 64k color modes from the VGA Feature Connector as well.

In the current CRT Terminator model, we are focusing on the <= 256 color video modes support. This was a decision to constrain the feature scope of the project to be manageable.

Btw this might be a good opportunity to clarify a technical wording aspect from our research: I hypothesize that "VESA Feature Connector" might not actually exist.

There is the "VGA Feature Connector", which is what IBM invented in 1987 into their first VGA adapter. This connector comes in two forms, an edge connector like the original VGA adapter has: https://www.vgamuseum.info/index.php/cpu/item … display-adapter and then the pin header connector: https://oummg.com/pin_header.jpg . The pin header connector is identical to the edge connector in pinout, I think manufacturers saw it as a more modern physical style than the edge connector. I believe VESA had no role in the creation of this feature connector (VESA was formed in 1989 according to Wikipedia)

Then there is VESA Advanced Feature Connector (VAFC) , which is a totally different beast from this VGA Feature Connector. It is present on AGP cards, and maybe some PCI cards. There is also something called an ATI Multimedia Channel (AMC), and maybe some other special video buses as well.

But there is no VESA Feature Connector. I believe that all sources that mention "VESA Feature Connector" do so imprecisely, and they either mean the VGA Feature Connector or VESA Advanced Feature Connector. If someone can dig up any official web archive sources to confirm or deny, that would be interesting.

Reply 9 of 71, by clb

User metadata
Rank Member
Rank
Member
gen_angry wrote on 2023-02-06, 03:20:

Interesting.

My Voodoo 1 doesn't have this connector but my PCI S3 Trio64V2/DX does have a 26 + 6 pin header labelled "Feature Connector". So this isn't just for ISA/VLB cards?

That is correct that also many PCI (and AGP!) adapters have the VGA Feature Connector. That PCI S3 Trio64V2/DX is an example of that: http://www.vgamuseum.info/index.php/cpu/item/ … -s3-trio64v2-dx

The 2x3 pin "Scenic Highway" on the other hand, I have no idea what that is 😁 Or the S3 connector, also not sure.

CRT Terminator is for now designed to work with ISA VGA adapters only. This is to control the scope of the project to be more manageable. I think if CRT Terminator is connected to a VGA Feature Connector on a PCI or AGP graphics card, it will show an image, but it will not be able to produce the right palette. At first we thought that enabling the "PCI VGA Palette Snoop" option in the motherboard BIOS would have resolved that, but it seems that it does not. So I presume CRT Terminator will need to live in the PCI bus in order to work with PCI and AGP adapters. Another challenge with PCI&AGP will be the increased input video resolution requirements. So the plan is to leave the PCI and AGP realms for a future development if everything goes well first in the ISA world.

Voodoo accelerator cards do not have a Feature Connector, but standalone Voodoo graphics cards often do. E.g. Voodoo 3 AGP has a VGA Feature Connector: http://www2.vgamuseum.info/index.php/componen … x-voodoo-3-3000

Reply 10 of 71, by pentiumspeed

User metadata
Rank l33t
Rank
l33t
clb wrote on 2023-02-06, 08:24:
That is correct that also many PCI (and AGP!) adapters have the VGA Feature Connector. That PCI S3 Trio64V2/DX is an example of […]
Show full quote
gen_angry wrote on 2023-02-06, 03:20:

Interesting.

My Voodoo 1 doesn't have this connector but my PCI S3 Trio64V2/DX does have a 26 + 6 pin header labelled "Feature Connector". So this isn't just for ISA/VLB cards?

That is correct that also many PCI (and AGP!) adapters have the VGA Feature Connector. That PCI S3 Trio64V2/DX is an example of that: http://www.vgamuseum.info/index.php/cpu/item/ … -s3-trio64v2-dx

The 2x3 pin "Scenic Highway" on the other hand, I have no idea what that is 😁 Or the S3 connector, also not sure.

CRT Terminator is for now designed to work with ISA VGA adapters only. This is to control the scope of the project to be more manageable. I think if CRT Terminator is connected to a VGA Feature Connector on a PCI or AGP graphics card, it will show an image, but it will not be able to produce the right palette. At first we thought that enabling the "PCI VGA Palette Snoop" option in the motherboard BIOS would have resolved that, but it seems that it does not. So I presume CRT Terminator will need to live in the PCI bus in order to work with PCI and AGP adapters. Another challenge with PCI&AGP will be the increased input video resolution requirements. So the plan is to leave the PCI and AGP realms for a future development if everything goes well first in the ISA world.

Voodoo accelerator cards do not have a Feature Connector, but standalone Voodoo graphics cards often do. E.g. Voodoo 3 AGP has a VGA Feature Connector: http://www2.vgamuseum.info/index.php/componen … x-voodoo-3-3000

Count me in. Very interested in your "CRT Terminator Digital VGA Feature Card ISA DV1000" once this becomes available. I'm not interested in CRT anymore. I had enough of them even back in the day we went through about 6 CRTs from early 1990's to around 2005. All were CRT cathodes wearing out no matter how tuned brightness I set. Not bright end. And all of them were high end consumer stuff. We are still using LCD monitors that are more than 10 years old now and still good.

Next stage I suggested is read out the VRAM data though a chip then translate and outputs DVI or displayport instead as VGA chipset writes to the VRAM. This gets around ramdac limitations.

Displayport has no 60 hz limitations. HDMI is.

Cheers,

Great Northern aka Canada.

Reply 11 of 71, by Shponglefan

User metadata
Rank l33t
Rank
l33t

This is a really cool idea and great project. Will definitely be backing this when it becomes available! 😁

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 12 of 71, by VileR

User metadata
Rank l33t
Rank
l33t

For video modes that do not have the possibility of pixel perfect upscaling, CRT Terminator's MultiMode feature carefully tunes a balance between aspect ratio and pixel correct upscaling.

Well done on giving this some extra attention! Non-integer scaling has always been a problem on flat panels, but those three screenshots at the bottom look good indeed. How does that work - do you first scale to the closest possible integer resolution, then apply a non-integer step? Does it correct for gamma when blending the color values of adjacent pixels?

Also curious to know how this might deal with demos like Copper or Ambience. 😉

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 13 of 71, by clb

User metadata
Rank Member
Rank
Member
VileR wrote on 2023-02-07, 07:01:

For video modes that do not have the possibility of pixel perfect upscaling, CRT Terminator's MultiMode feature carefully tunes a balance between aspect ratio and pixel correct upscaling.

Well done on giving this some extra attention! Non-integer scaling has always been a problem on flat panels, but those three screenshots at the bottom look good indeed. How does that work - do you first scale to the closest possible integer resolution, then apply a non-integer step? Does it correct for gamma when blending the color values of adjacent pixels?

Also curious to know how this might deal with demos like Copper or Ambience. 😉

Thanks!

Both Copper and Ambience demos (and several others) have been used as test cases during development, and they do both work in that they do not lose sync and are able to show through the demo, but unfortunately there are limitations.

The challenge with Ambience is that it wants to configure a 120hz video mode. (If I recall correctly, it was possible to decrease the frame rate in Ambience down to 90hz at smallest, though that is still not quite small enough for LCDs). The issue here is that there does not seem to exist any flat displays that would allow a 120hz refresh rate at retro small resolutions like 640x400 or 640x480, those two developments seem to be very contrary in business cases to each other.

In Passthrough mode, whatever rate the demo is posting, will be forwarded to the display, so if there does exist a display that does support such a combination, it would work.

In Upscaled mode, posting e.g. 1600x1200@120hz or 1920x1080@120hz is beyond the DVI-D single link spec (and CRTT max pixel clock speeds), there is no way to get that much data over to the cable. So what CRTT will do in Upscaled mode is that it will implement frame skip down to 75 hz, so Ambience will show and retain sync, but naturally the intended demo effect will not be perfect. At least it won't be a black screen, and one can get an impression of the demo.

The Copper demo does also work, CRTT does not lose sync. But it should be noted that in the "wobbler" parts of the demo, it does very nonconforming things by programming the CRTC video frame registers on the fly to implement the horizontal sine wave style effect. This was something that was flaky already among different VGA adapters and CRT monitors.

While it would be possible to recognize this behavior on CRTT, doing so was found to be counterproductive against another goal, that is to ensure wide support to signal stability from different VGA adapters. On some cards we see fluctuating hsync or hblank timings, which is caused by poor signal on the Feature Connector line, so we carefully do a "lax" interpretation of these timings to help reconstruct a stable video sync signal. This is at odds against what the Copper demo is intentionally doing. So we leaned on the side of implementing sync stabilization at the expense of this demo. Basically, CRTT will think in Copper that the VGA adapter is losing its sync, and it will work hard to keep the framing intact, so the sine wave parts of the demo will look pretty "interesting". The non-wobbly parts of the demo will work as intended.

While we are visiting this topic, there is also a third demo, Kukoo 2, which was consciously rejected from being supported. It does palette color changes at each scanline to get more than 256 colors in a single frame. Supporting that demo would require actively delaying the video signal in order to sync up palette writes and the Feature Connector video signal with each other at hsync. Supporting this demo would add more processing delays to CRTT, which many people would not prefer, so we chose to be practical and optimize to keep the processing latency down. The Kukoo2 demo will show on CRTT, but the palette will be off.

The most important demoscene video effects, i.e. the Pinball games 😀 , are fully supported however, like you can see a screenshot of on the web page.

In terms of video scaling, the MultiMode setting relies on active coordination with the LCD display. CRT Terminator will reframe the timings of the video signal for aspect ratio control, and then implement integer scaling on the video signal. The LCD display should be set in "Force 4:3" mode, and it will then do the final bilinear filtering part to shape the output image to cover the 4:3 screen. We find this combination works best for pixel art content.

If only point scaling is desired, one can disable the MultiMode feature, and have CRT Terminator implement point sampling to produce a 4:3 image. Or if only bilinear filtering is desired, then one can run in Passthrough mode to have the display perform the scaling (which typically looks very close to being bilinearly filtered).

Btw, if you are looking close on the screenshots, one thing to note is that USB3HDCAP with which those images were captured, is a lossy YUV 4:2:0 capture card, so there is a chroma loss in the images, which will produce more softness. I haven't dared to pull the trigger to purchase one of the >500 eur capture cards until I find which would be able to do full lossless YUV 4:4:4 (especially when I count I already have accumulated 11(!) different capture cards in my test lab by now when testing CRTT compatibility)

Reply 14 of 71, by VileR

User metadata
Rank l33t
Rank
l33t

Nice! I mentioned these demos as extreme edge-cases which I wouldn't really expect to work - it's positively surprising that it handles them as well as it does. 😀

On the subject of scaling: yeah, both point-only and bilinear-only are bad for noninteger scaling of pixel-art type content. For me the happy medium is performing point scaling to the closest possible integer factor, then using a bilinear (or similar) algorithm for the final step only. Which is pretty much how you describe doing it in conjunction with the display's internal scaling.

The only issue is that typical monitors don't do gamma correction when they scale the image: adjacent RGB values are blended as if they were linear, which messes with the hue and brightness (examples at https://blog.johnnovak.net/2016/09/21/what-ev … colour-blending). But for this particular use case, if you feed them an image that's already point-scaled by a high enough factor, you're effectively minimizing the error.

clb wrote on 2023-02-07, 09:36:

Btw, if you are looking close on the screenshots, one thing to note is that USB3HDCAP with which those images were captured, is a lossy YUV 4:2:0 capture card, so there is a chroma loss in the images, which will produce more softness. I haven't dared to pull the trigger to purchase one of the >500 eur capture cards until I find which would be able to do full lossless YUV 4:4:4 (especially when I count I already have accumulated 11(!) different capture cards in my test lab by now when testing CRTT compatibility)

It's a shame that YUV 4:4:4 seems to be non-standard and poorly supported in general. After all "lossless 4:2:0" is a contradiction in terms, as your chroma resolution is basically one-quarter of the original. For pixel content that's originally low-res, you can get around that if you point-scale it upwards by an *even* integer factor before you feed it to the capture device, so that pixel edges are exactly aligned with the coarser chroma grid. I'm not sure if that's an option with the current CRTT setup, but could be an idea if you wanted to have a specialized output mode just for video capture purposes.

[ WEB ] - [ BLOG ] - [ TUBE ] - [ CODE ]

Reply 15 of 71, by clb

User metadata
Rank Member
Rank
Member
VileR wrote on 2023-02-08, 10:01:

It's a shame that YUV 4:4:4 seems to be non-standard and poorly supported in general. After all "lossless 4:2:0" is a contradiction in terms, as your chroma resolution is basically one-quarter of the original. For pixel content that's originally low-res, you can get around that if you point-scale it upwards by an *even* integer factor before you feed it to the capture device, so that pixel edges are exactly aligned with the coarser chroma grid. I'm not sure if that's an option with the current CRTT setup, but could be an idea if you wanted to have a specialized output mode just for video capture purposes.

Yeah, what I actually found more disappointing was that StarTech's product technical specification sheet did not mention the YUV 4:2:0 limitation, but listed just "RGB capture" (as opposed to the even worse MJPEG capture, which practically all cheap USB capture boxes do).

For a while I thought that USB3HDCAP would have been 4:2:2 for that exact reason that 320x200 is scaled up 5x horizontally and 6x vertically, which hides the loss in vertical axis, but then in other video modes that need to do a different integer factors, the vertical Chroma decimation also became apparent.

I inquired StarTech tech support whether they might be able to add a 4:4:4 option as a firmware update, or at least update their Technical Specifications page, to which they replied that "if you have just recently purchased the product, you should be eligible for a refund" (rather than send a negative product feedback).

But even if they did have that firmware option, I believe the root cause for the decimation is that they are unable to achieve a high enough communication bandwidth on the USB bus. Apparently for clear lossless capture, there currently only exist PCIe based cards, which do seem to get super costly.

Though I don't want to unreasonably bash on StarTech really, since USB3HDCAP is still the best capture box that I have found so far (at the price point).

Maybe the general takeaway here is that CRT Terminator has been tested against several different video capture devices (mostly on the cheaper end that I think people might have lying around), I am hoping to do a more general writeup of what people can expect.

Reply 16 of 71, by clb

User metadata
Rank Member
Rank
Member
pentiumspeed wrote on 2023-02-07, 00:02:

Count me in. Very interested in your "CRT Terminator Digital VGA Feature Card ISA DV1000" once this becomes available.

Shponglefan wrote on 2023-02-07, 00:29:

This is a really cool idea and great project. Will definitely be backing this when it becomes available! 😁

I want to say that this kind of feedback is very valuable. We are still very early, though there will eventually come a time when we'll have to know the size of a production run, and we know from the conversation with the part vendors that their minimum order sizes for fabrication runs are measured in the hundreds. That is why I set up a mailing list on our web page at https://oummg.com/ so that we would be able to arrive to a feeling of whether the volume and interest will be there to control the risks.

I'm looking to do either some videos or blog entries to introduce more information about CRT Terminator in the coming weeks, so stay tuned!

Reply 17 of 71, by pentiumspeed

User metadata
Rank l33t
Rank
l33t

This is why about odd Hz like 120 or more, is displayport has no limitations on hz and resolution and using FreeSync top of the line monitor might pull that off even with DVI to displayport adapter cable?

Next step is generation 2 CRT Terminator Digital VGA feature is use native displayport if you can get the datasheet on how to create this signals for displayport.

Avoid HDMI and DVI as you had noticed has hard limitations.

Cheers,

Great Northern aka Canada.

Reply 18 of 71, by clb

User metadata
Rank Member
Rank
Member

It would indeed be great to go for the latest, but unfortunately that would not be feasible without going for a $500+ multi-gigahertz FPGA, and with that, I don't think there would be a market.

Fortunately, when put in context, that 120hz does not represent a class of DOS software. Ambience is just one demo, so it makes sense to not triple the price by designing the card around it.

We are focusing CRT Terminator for CGA, EGA and VGA content to allow experiencing DOS games content on XT-486 machines. Most of such content run either at 70Hz (VGA 320x200) or 60Hz (Mode X and 640x480), or in some special cases, at oddish refresh rates between 56Hz-70Hz.

Currently we find that displays like ASUS ProArt PA248QV and Philips Brilliance 252B9/00 that support refresh rates up to 75hz, work really beautifully with CRT Terminator, and allow targeting that 70hz rate in a stutter-free fashion that most DOS games used. That is the "holy grail" goal for DOS gaming that we are shooting for.

Reply 19 of 71, by Oetker

User metadata
Rank Oldbie
Rank
Oldbie

Just to be clear, though, if I understand the website correctly the hardware can't upscale to 1600x1200@70Hz, right? So when running at 70Hz the upscaling needs to be done by the monitor.