When 14 documented graphic modes become 56 graphic mode

A brilliant article, written by Paul Chabot and published in "Antic" magazine, Vol. 3 No. 5, entitled "Unlocking the 56 graphic modes — Instant exploration of Atari's display styles" makes an incredible revelation: The Atari 8-bit computers actually have many more graphic modes than those listed and documented in the computer manuals.

Let's start at the beginning. When you take a closer look at the list of available graphic modes, you realise that all the modes we know today actually came about in 3 phases.

Phase 1: Atari 400/800 & CTIA

When the Atari 400/800 were initially launched at the end of 1979, with the CTIA graphics chip, the following graphics modes were available:

ANTIC mode
(hexadecimal)
BASIC modeMode typeColumns x Rows# of colours
2GR.0TEXT40 x 242 {1}
3/TEXT40 x 192 {1}
4/TEXT40 x 245
5/TEXT40 x 125
6GR.1TEXT20 x 245
7GR.2TEXT20 x 125
8GR.3GRAPH40 x 244
9GR.4GRAPH80 x 482
AGR.5GRAPH80 x 484
BGR.6GRAPH160 x 962
C/GRAPH160 x 1922
DGR.7GRAPH160 x 964
E/GRAPH160 x 1924
FGR.8GRAPH320 x 1922 {1}

{1} 1 colour, 2 luminances

Phase 2: Atari 400/800 & GTIA

When the GTIA chip replaced the CTIA chip in 1982, 3 new graphics modes were added (GR.9-10-11):

ANTIC mode
(hexadecimal)
GTIA modeBASIC modeMode typeColumns x Rows# of colours
20GR.0TEXT40 x 242 {1}
30/TEXT40 x 192 {1}
40/TEXT40 x 245
50/TEXT40 x 125
60GR.1TEXT20 x 245
70GR.2TEXT20 x 125
80GR.3GRAPH40 x 244
90GR.4GRAPH80 x 482
A0GR.5GRAPH80 x 484
B0GR.6GRAPH160 x 962
C0/GRAPH160 x 1922
D0GR.7GRAPH160 x 964
E0/GRAPH160 x 1924
F0GR.8GRAPH320 x 1922 {1}
F1GR.9GRAPH80 x 19216 {2}
F2GR.10GRAPH80 x 1929
F3GR.11GRAPH80 x 19216 {3}

{1} 1 colour, 2 luminances
{2} 1 colour, 16 luminances
{3} 16 colours of the same luminance

Phase 3: From Atari 1200XL and later

Finally, from the Atari 1200XL onwards, additional graphics modes that were available with ANTIC have become accessible directly in Atari BASIC (GR.12-15). In fact, only ANTIC mode 3 — a variation of ANTIC mode 2 (GR.0 in Atari BASIC) but with a 2-pixel descender — remains unavailable directly in Atari BASIC.

This is the complete list of all the graphics modes we know today:

ANTIC mode
(hexadecimal)
GTIA modeBASIC modeMode typeColumns x Rows# of colours
20GR.0TEXT40 x 242 {1}
30/TEXT40 x 192 {1}
40GR.12TEXT40 x 245
50GR.13TEXT40 x 125
60GR.1TEXT20 x 245
70GR.2TEXT20 x 125
80GR.3GRAPH40 x 244
90GR.4GRAPH80 x 482
A0GR.5GRAPH80 x 484
B0GR.6GRAPH160 x 962
C0GR.14GRAPH160 x 1922
D0GR.7GRAPH160 x 964
E0GR.15GRAPH160 x 1924
F0GR.8GRAPH320 x 1922 {1}
F1GR.9GRAPH80 x 19216 {2}
F2GR.10GRAPH80 x 1929
F3GR.11GRAPH80 x 19216 {3}

{1} 1 colour, 2 luminances
{2} 1 colour, 16 luminances
{3} 16 colours of the same luminance

What happens if?

Paul Chabot, the author of the article, points out that the Atari BASIC GR.9-10-11 modes are in fact variations of the Atari BASIC GR.8 mode. These 4 modes are based on the same ANTIC F mode, with the variations offered by the GTIA 0-1-2-3 modes.

Hence the legitimate question: apart from ANTIC F, all the other graphics modes we know only use GTIA mode 0. But what happens if we explore GTIA modes 1-2-3 for all ANTIC modes, not just ANTIC F?

ANTIC mode
(hexadecimal)
GTIA modeBASIC modeMode typeColumns x Rows# of colours
20GR.0TEXT40 x 242 {1}
21/TEXT40 x 248 ???
22/TEXT40 x 248 ???
23/TEXT40 x 248 ???

etc...

{1} 1 colour, 2 luminances

ANTIC mode 2. GTIA modes 0-1-2-3

ANTIC mode 2
GTIA modes 0-1-2-3

To see GTIA modes 0-1-2-3, simply use the classic GRAPHICS instruction (abbreviated as GR.) in Atari BASIC, followed by a POKE instruction.

GTIA modePOKE
0POKE 623,0
1POKE 623,64
2POKE 623,128
3POKE 623,192

What do these additional graphics modes look like? The programme initially proposed in Paul Chabot's article provides a visual answer to this question. Some modes are usable, others hardly at all, but they're all worth exploring.

For the video: Altirra emulator, Atari 1200XL, NTSC, 1982 OS rev. A, Atari BASIC Rev C. cartridge.

 

Download Paul-Chabot-56-modes-ALLMODES.BAS.zip to get: a textual .TXT version of the listing, to be printed on your current computer and retyped on the Atari. If you have a SIDE3, a FujiNet or any "SIO-to-<something>" device, you'll also find a .LST version NEW:ENTER "D1:ALLMODES.LST":RUN, a .BAS version RUN "D1:ALLMODES.BAS" and an .ATR diskette version (in Atari DOS 2.5 format, 130 KiB).

How to use the program:

Follow-up question #1

Why don't the Atari BASIC GR.9-10-11 graphics modes offer variants with a 4-line text window as standard, like all the other Atari BASIC graphics modes?

Because the Atari BASIC GR.9-10-11 graphics modes rely on GTIA modes 1-2-3 respectively and that a text window in Atari BASIC GR.0 mode is based on GTIA mode 0, not 1-2-3.

Follow-up question #2

Very attentive readers will have noticed that these lists of graphic modes never offer ANTIC modes 0 and 1. Why is it so?

In fact, these "ANTIC modes" are instructions executed by ANTIC to build an image, with an internal program called the "Display List".

A "Display List" really describes how to build the image to display line by line, where to find the data to be displayed, etc. A "Display List" is automatically generated by Atari BASIC for all the text and graphic modes available in Atari BASIC. A "Display List" can also be built/modified by the user.

A "Display List" allows you to do extraordinary things, such as:

By asking the "Display List" to execute a very short program in machine language after drawing a line, you can also:

By asking the "Display List" to execute a short program in machine language after drawing an image, you can also:

To come back to the original question, the ANTIC 2 instruction is actually used to display a line (just one) in classic text mode (GR.0) with 40 columns. To obtain the Atari BASIC GR.0 text mode we are familiar with, a "Display List" created by the computer displays 24 times one line. 24 times the ANTIC 2 instruction to get the usual 24 lines of text.
But the ANTIC 0 and 1 instructions are not used to display a particular text or graphics mode.
The ANTIC 0 instruction requests to draw a black line, a blank line.
The ANTIC 1 instruction, "jump to location", warns that the next 2 digits of the "Display List" represent a RAM address that the "Display List" must branch to because it contains the rest of this "Display List".


Knowledge base article: kb-hardware-0005-atari-8bit-56-graphic-modes
REV. 003.

Back to the Knowledge base index Knowledge base