10

This is as a follow-up to my previous question on artifact colors and the excellent answers provided there.

The images below show a simple example of artifact colors generated using a single bit-plane 640x200 Amiga A1000 displaying on a 1080 monitor. The top image is the RGB mode display, middle is the same image in NTSC Composite mode, and the bottom image is just a close-up to make all the artifact colors more visible.

RGB video Composite video Composite video close-up

Here is one additional photo where, instead of random dot patterns, I created varying line patterns. The pixels on the left are from a single (1-bit plane) foreground color of yellow, while the pixels on the right are from a single foreground color set to green. The background is black for both, but can obviously be modified, to yield even more colors.

line artifacts

Question: I am speculating that the same technique used to produce 10-bit color on the IBM CGA 640x200 display would produce 18-bit (262,144) color on the Amiga using its 12-bit native color palette and some clever Copper programming to update the two CLUT entries as needed during display. I will appreciate any answer that either validates or disputes this claim.

Additionally, I am somewhat surprised that such a high-color, low-bandwidth display mode hasn't already been used for some nifty demo on the Amiga. HAM mode animations were common, but require 3x more memory/bandwidth (320x200x6 bit-planes) than this artifact color mode would need. It seems that very smooth animation or even video playback is theoretically possible with the artifact mode. Is anyone aware of any demo or other Amiga software that ever used artifact color, or do you have any insights as to why not?

2
  • If you made those images yourself, the simplest way of course is just to try it out, and see if it works. Or ask some people in the Amiga demoscene. A lot of things depend on the details how the Amiga generates color. You may get considerably less than 18-bit color, though: Many of the possible combinations may produce the same artifact color, or colors that are very close.
    – dirkt
    May 28, 2017 at 5:22
  • In your other question, @ValentinoMiazzo mentioned Virtual Karting which somehow uses a CRT's blurred pixels to show additional colors. The colors look wrong in WinUAE where the pixels are more discrete, also with an Indivision DVI adapter. Jun 14, 2017 at 21:10

3 Answers 3

6

I don't see a technical question, but I will attempt a guiding answer toward some of the problems.

Apple II on an NTSC TV vs Amiga connected via composite to an RGB monitor

Dot patterns to trigger NTSC color phases on a TV is fine on any suitable retro platform if you accept the halved resolution.

Presumably you want to keep the Lores (320x200) resolution at least, so what you can do is draw some dot patterns in Hires (640x200) right away in a 4x2 grid (twice the 2x1 you'd expect, to get artifacts from normal scanlining and lores pixel phase), and see how many distinct colors appear(n).

If you can control it, you can go from 1 bitplane to 4 (16*16=256 times as many colors(n*256) - provided all are unique). Control seems unlikely, though, especially near the original 12-bit values (which will, in turn, be similarly changed if output over composite).

An Amiga can likely output the same patterns as PC for CGA, so that using a CGA monitor will give you control, at the price of a reduction in colors to that of CGA.

"High-color"

I'm aware of no Amiga demos that attempt tricks over composite.

But if the goal is to get more than 4,096 RGB colors on OCS, a few demoscene prods such as Frazetta have used temporal dithering to achieve 15-bit color depth, via the PCHG format converter, using the HAMLab software to render the pictures.

There are other dithering techniques such as horizontal dithering and mask dithers for so-called chunky modes (4x4 (and up) Lores hardware pixels as a software pixel).

3
  • Thanks. I added bold text in the question to highlight the essential technical challenge. A detailed understanding of how the CGA demo controls 1024 artifact colors using only 16 native colors may be essential for transferring the technique to the Amiga.
    – Brian H
    May 29, 2017 at 22:35
  • Best to clarify for others which demo you mean. Anything to get more colors over native would be phase or dithering. The screens that have > 16 colors seem to go lower still in resolution, but it may be a result of the limited screen bandwidth/CPU speed. It's hard to evaluate how good the 1024 colors look in person, but color-wise it seems far from a 1024 color arbitrary-RGB-value picture; even an arbitrary-palette 256 color PNG (in the same resolution). A chunky mode, as mentioned, will allow 12-bit arbitrary-RGB colors, or 15-bit with temporal dithering, and HAM allows thousands in 320x200. May 29, 2017 at 23:06
  • Arbitrary-RGB means to say that if you do achieve color control, the unique colors you do get out from dot patterns over composite might be in the hundreds or a few thousands, and a chunk of them might not be the RGB values you need for the picture or effect. I.e. only by trying will you find out, and these things are a few of the things to be aware of to achieve visual fidelity. May 29, 2017 at 23:14
2

I would expect that configuring an A1000 for 640x200x16 color mode and programming all 16 colors as different gray levels would make it possible to show 65536 artifact colors on screen rather easily. Looking at your picture, it appears that repeating a four-pixel pattern on even scan lines would yield a solid color; shifting that pattern by two pixels on odd scan lines would show the same color. I would expect that programming some of the 16 palette entries as colors rather than grays would yield colors that weren't among the primary 65536, but I think the results would probably be most predictable if one used grays. Even then, I have no idea how consistent the colors would be among different machines.

I would guess from your picture that in non-interlace mode the color phase would flip on even and odd scan lines, but would be the same on every frame. It's also possible that it might flip on every frame, or that it might be the same on consecutive frames but it might be unpredictable whether even or odd scan lines should be shifted.

Things will be more complicated when interlace is enabled, since the required color phases will shift once every other field (i.e. 30 times/second) and I have no idea if there's any way to distinguish even versus odd fields. If selecting non-interlace mode forces a certain color phase, one may be able to count how many frames have been shown after switching to interlace mode, but I have no way of testing such a thing.

5
  • Thanks for the answer. I hadn't thought about the advantages of using 4 bit-planes and grayscale to improve the predictability of the color. I'm mostly trying to figure out how much can be done color-wise using only 1 bit-plane and modifying the 2 available colors frequently during the frame. Interlace adds another factor of complexity which I also haven't thought about. Mostly, I think the fast animation possible with only 1 bit-plane should create some interesting color animation effects, maybe only for demos.
    – Brian H
    Jun 14, 2017 at 17:11
  • @BrianH: I would think that for demo purposes, using 2-3 bitplanes would be best. Two bitplanes would allow 256 colors, and 3 would allow 4096, and I think that 3 bitplanes would leave enough memory bandwidth for some cool visual effects. BTW, it would probably be fairly simple to build a DB9-to-composite adapter that would be usable even on Amiga models that lack a composite video output. Can the Amiga draw things in the left and right overscan regions?
    – supercat
    Jun 14, 2017 at 19:02
  • The Amiga supports overscan. The RGB connector is a DB-23, but the pinout does not include composite video (old.pinouts.ru/Video/AmigaVideo_pinout.shtml). The A1000 and A1200 have RCA jacks with color composite, while other Amigas have monochrome RCA. The A520 adapter produces composite (and RF) from RGB.
    – Brian H
    Jun 14, 2017 at 19:22
  • @BrianH: If the Amiga can be programmed to put content sufficiently early in the scan line, it would be possible to use two or three resistors to combine the sync signals with one of the RGB outputs. Depending upon signal levels, it might be necessary to add a little extra circuitry. A color composite signal needs to include a yellow stripe at the extreme left edge of the frame, which monitors can use as a color phase reference. The biggest question mark in my mind would be whether the Amiga could put a repeated 4-pixel (high-med-low-med) sequence at the necessary position on each line.
    – supercat
    Jun 14, 2017 at 20:19
  • @BrianH: If the Amiga can't produce the required colorburst signal, one could add circuitry to produce it, but placing it in the frame would probably be the most easiest and most consistent way to generate it if it's possible.
    – supercat
    Jun 14, 2017 at 20:21
-1

Very interesting article.

To give you a short answer to your question 'Can artifact color mode create 262,144 colors on Amiga OCS?':

No you can not. And the reason is -as you might have guess- that the Amiga OCS chipset and specially the Denise (graphic) chip can only handle 12-bit graphics = 2^12 -> 4096 colors and has only 32 color registers which are loaded with RGB values taken from the 4096 color palette. To be able to create a color palette larger than 2^12 = 4096 colors you need some external hardware connected to Amiga e.g. to the 23-pin RGB video port like HAM-E graphic card. To show more colors than the 32 colors you can take advantage of the copper to change the values in the color registers with new values every scanlline.

With the Amiga AGA chipset it's another story. It has a 24-bit palette and can show up to 2^18 = 262144 colors in HAM8 mode (8 stand for 8-bitplanes in contrast to OCS chipset HAM6 - 6-bitplanes).

2
  • 3
    This is asking whether you can do this using artefact mode, which afaik exploits NTSC / PAL to combine multiple pixels into a single colour. This is correct only assuming that you are using a screen specifically designed to eliminate said artefacts.
    – wizzwizz4
    Sep 8, 2017 at 17:22
  • 1
    It's possible to use tricks to get a 64-fold expansion of CGA's 16 native colors. This question is asking if the Amiga can get a similar expansion starting from its native 4096 colors.
    – Mark
    Sep 8, 2017 at 20:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .