Under the direction of Jay Miner, the CTIA/GTIA chips were designed by George McLeod with technical assistance of Steve Smith.
[1] Various publications named the chips differently, sometimes using the alternative spelling Adapter[5][6] or Graphics,[3] or claiming that the "C" in "CTIA" stands for Colleen/Candy[5] and "G" in "GTIA" is for George.
This scheme drew the screen line-by-line from program code on the ROM cartridge, a technique known as "racing the beam".
Design of the CTIA was well advanced at this point, so instead of a redesign a clever solution was provided by adding a second chip that would effectively automate the process of racing the beam.
As a result of these changes, the new chips provide greatly improved number and selection of graphics modes over the TIA.
The original design of the CTIA chip also included three additional color interpretations of the normal graphics modes.
This feature was ready before the computers' November 1979 debut, but was delayed so much in the development cycle that Atari had already ordered a batch of about 100,000 CTIA chips with the graphics modes missing.
Not wanting to throw away the already-produced chips, the company decided to use them in the initial release of the Atari 400 and 800 models in the US market.
[5][6] From this point, all new Atari units were equipped with the new chip, now called GTIA, that supported the new color interpretation modes.
CTIA/GTIA provides 54 Read/Write registers controlling Player/Missile graphics, Playfield colors, joystick triggers, and console keys.
The left edge (See Horizontal Coordinates) is fixed and the size adjustment expands the Player or Missile toward the right in all cases.
Player/Missile priority selection mixed with Quad width Player Missile graphics can be used to create multiple text colors per Mode line.
With no other intervention by CPU or ANTIC DMA to update the values the result is vertical stripe patterns the height of the screen including overscan areas.
This system provides instant, pixel-perfect overlap comparison without expensive CPU evaluation of bounding box or image bitmap masking.
CTIA includes only one default color interpretation mode for the ANTIC Playfield data stream.
The special GTIA color processing modes also alter the display or behavior of Player/Missile graphics in various ways.
Player/Missile graphics (without the fifth Player option) display properly in this mode, however collision detection with the Playfield is disabled.
Player/Missile graphics (without the fifth Player option) display properly in this mode, however collision detection with the Playfield is disabled.
When the Priority bits are all 0 a different effect occurs—Player and Playfield pixels are logically OR'd together in the a manner similar to the Multi-Color Player feature.
In later models the console speaker is removed and the sound is mixed with the regular POKEY audio signals for output to the monitor port and RF adapter.
Repeatedly writing 0 to the bit will produce a 60 Hz buzzing sound as the vertical blank resets the value.
The official ATARI name for the sprite system is "Player/Missile Graphics", since it was designed to reduce the need to manipulate display memory for fast-moving objects, such as the "player" and his weapons, "missiles", in a shoot 'em up game.
The ANTIC chip includes a feature to perform DMA to automatically feed new pixel patterns to CTIA/GTIA as the display is generated.
The worst case rotation of the entire bitmap is still quite fast in 6502 machine language, even though the 6502 lacks a block-move instruction found in the 8080.
Atari BASIC programs using Player/Missile graphics have other options for performing high speed memory moves.
One method is calling a short machine language routine via the USR() function to perform the memory moves.
The GTIA chip is backward compatible with the CTIA, and adds 3 color interpretations for the 14 "normal" ANTIC Playfield graphics modes.
It enables the Atari to display gray-scale digitized photographs, which despite their low resolution were very impressive at the time.
The GTIA also fixed an error in CTIA that caused graphics to be misaligned by "half a color clock".
[5][15] Atari owners can determine if their machine is equipped with the CTIA or GTIA by executing the BASIC command POKE 623,64.