Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

General discussions or ideas about hardware.
pixelpusher
Posts: 144
Joined: 27 Dec 2019 21:01

Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by pixelpusher »

Hi to all hardware wizards on the forum!

Looking at the output of my ATARI ST and STe on a VGA TFT (having no original ATARI RGB monitor to compare) and witnessing some color not quite like I'd expect them (e.g. black not being fully black) I asked myself, if any of you has researched or dealt with the color level conversions - and also how this is dealt with on the STF remake project.

E.g.
- are the ST(e)'s output levels covering the full RGB range that computer monitors can display, or are they limited RGB (e.g. 16 ... 235 like it's done for output on TVs)?
- or do output converters (like Exxos' VGA adapter) extend the output level to cover the full RGB range?
- Bonus question: the additional precision of the STe's color palette I assume gets added to the lower levels of the output?

Best regards & merry christmas,

Wilfried

P.S.: Link to full RGB vs. limited RGB color level primer https://kodi.wiki/view/Video_levels_and_color_space
User avatar
Icky
Site Admin
Site Admin
Posts: 4377
Joined: 03 Sep 2017 10:57
Location: UK

Re: Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by Icky »

@pixelpusher there are several ways that this is being looked at in the remake and other projects.

On the remake @exxos has used the Falcon DAC to help with improving the video out. It was first tested as an add-on board on the ALPHA and then made its way onto the H4/5 as part of the motherboard. There is a whole thread on the video driver thoughts - https://www.exxosforum.co.uk/forum/viewt ... =77&t=1235

In addition there are two other large projects on the go from @Smonson.

Firstly the Sidequest scan doubler - https://www.exxosforum.co.uk/forum/viewt ... =29&t=1756 which is a board that uses the existing Shifter and provides VGA out.

Secondly the Phoenix Shifter - https://www.exxosforum.co.uk/forum/viewt ... f=80&t=330 which is currently an add-on board to the H4/5 to provide HDMI out. Once this has had a few areas ironed out this will most likely make its way onto a future Hx motherboard.
pixelpusher
Posts: 144
Joined: 27 Dec 2019 21:01

Re: Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by pixelpusher »

Hi Icky,
Icky wrote: 24 Dec 2020 10:36 @pixelpusher there are several ways that this is being looked at in the remake and other projects.

On the remake @exxos has used the Falcon DAC to help with improving the video out. It was first tested as an add-on board on the ALPHA and then made its way onto the H4/5 as part of the motherboard. There is a whole thread on the video driver thoughts - https://www.exxosforum.co.uk/forum/viewt ... =77&t=1235

In addition there are two other large projects on the go from @Smonson.

Firstly the Sidequest scan doubler - https://www.exxosforum.co.uk/forum/viewt ... =29&t=1756 which is a board that uses the existing Shifter and provides VGA out.

Secondly the Phoenix Shifter - https://www.exxosforum.co.uk/forum/viewt ... f=80&t=330 which is currently an add-on board to the H4/5 to provide HDMI out. Once this has had a few areas ironed out this will most likely make its way onto a future Hx motherboard.
thx for the links. It still creates more questions than answers though (e.g. slightly confused by the voltage levels; I remembered VGA being between 0 .. 0.7V per color signal, on remake thread however the Palette level 0 gets converted to 1.6V?? - or are these the voltage levels for the DAC?).

Here's the main problem I'm stumbling over (and I'm looking at this mostly from the software side):
While conversion of 8 bit (image) data to the 3 bit palette can be done easily (you get rid of the five lower bits and then have to consider the error introduced by that when displaying the image data), expanding the 3 bit palette data of the ST to 8 bit (or even 6 bit) leaves some wiggle room.

Possible solutions would be (for [Palette index] -> range of RGB values/output levels)

[0] 0-31
[1] 32-63
[2] 64-95
[3] 96-127
[4] 128-159
[5] 160-191
[6] 192-223
[7] 224-255

If you'd choose an offset (e.g. 15 as kinda mid-point within one level) you could come up with something like this
[0] -> 15
[1] -> 47
[2] -> 79
[3] -> 111
[4] -> 143
[5] -> 175
[6] -> 207
[7] -> 239

but wouldn't cover the full RGB levels a computer monitor can display (thus get some washed out colors, while it would be ok on a TV). If you'd expand the range to cover the full RGB levels (so each step on the palette adds more than 32), then this also poses interesting questions of how that would handle something like the output of an STe.

As an alternative you could also use the 3 bit pattern and duplicate it like this

6bit output = (3bit input << 3) | (3bit input)

(and similar for 8 bit output) to cover the full RGB range, this however creates slightly uneven ranges for every step, complicating things on the software side (if you want to display image data "properly").

Best regards,

Wilfried
User avatar
exxos
Site Admin
Site Admin
Posts: 28376
Joined: 16 Aug 2017 23:19
Location: UK

Re: Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by exxos »

Black will never be totally black with most displays. You will need a oled display or similar..

As for voltages, you will have to look up how video signals work. I assumed black was zero, but its not. Black is at 1volt or there abouts. You can't lower the voltage to get better black either, as monitors compensate and adjust levels anyway. If you look in the DAC threads there is a lot of info in there about it all.
pixelpusher
Posts: 144
Joined: 27 Dec 2019 21:01

Re: Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by pixelpusher »

exxos wrote: 24 Dec 2020 12:46 Black will never be totally black with most displays. You will need a oled display or similar..

As for voltages, you will have to look up how video signals work. I assumed black was zero, but its not. Black is at 1volt or there abouts. You can't lower the voltage to get better black either, as monitors compensate and adjust levels anyway. If you look in the DAC threads there is a lot of info in there about it all.
I'm not talking about "totally" black. My question is if the output values generated (either by a VGA converter likey yours or the ST DAC) cover the full RGB output range or if they don't (like on the output for TV sets).

I had read your post (https://www.exxosforum.co.uk/forum/viewt ... 170#p14661) and that could indicate (as the ranges increases with uniform spacing of 0.2V) that black might start with a slight offset (to sRGB black) - which would map an ST palette value of rgb(0,0,0) into a very dark greyish output (somewhere in the sRGB range of 17-32).

If it ain't (and there's no offset for the black value), the color levels potentially wouldn't be uniformely spaced.
User avatar
exxos
Site Admin
Site Admin
Posts: 28376
Joined: 16 Aug 2017 23:19
Location: UK

Re: Conversion of ATARI ST(e) RGB output to VGA input (for LCD or Cathode VGA monitor)

Post by exxos »

I don't recall offhand .. You would have to measure the colours on a scope.. Though looking at the DAC data sheet may tell you more.. I think white was around more like 3 volts..

Edit:
I do have a simulation of the RGB drivers on my home PC showing the voltage steps.. But I'm not home for a few days now..

Return to “HARDWARE DISCUSSIONS”

Who is online

Users browsing this forum: ClaudeBot and 9 guests