[ Usenet FAQs | Search | Web FAQs | Documents | RFC Index ]
Single Page
Top Document: Atari 8-Bit Computers: Frequently Asked Questions
Previous Document: 1.10) What is the Atari XE?
Next Document: 1.12) What is the internal layout of the 8-bit Atari?
-
Search the FAQ Archives
Single Page
Top Document: Atari 8-Bit Computers: Frequently Asked Questions
Previous Document: 1.10) What is the Atari XE?
Next Document: 1.12) What is the internal layout of the 8-bit Atari?
1.11) What are the SALLY, ANTIC, CTIA/GTIA, POKEY, and FREDDIE chips?
Some of the following text is taken from De Re Atari (Atari#APX-90008), a book published by Atari through the Atari Program Exchange (APX) and copyright 1982 by Chris Crawford, et al. See http://www.atariarchives.org/dere/ where the full text of De Re Atari is now available online. The internal layout of the Atari 8-bit computer is very different from other systems. It of course has a microprocessor (a 6502), random-access memory (RAM), read-only memory (ROM), and a peripheral interface adapter (PIA; a 6520). However, it also has three special-purpose large-scale integration (LSI) chips known as ANTIC, CTIA or GTIA, and POKEY. These chips were designed by Atari engineers primarily to take much of the burden of housekeeping off of the 6502, thereby freeing the 6502 to concentrate on computations. While they were at it, they designed a great deal of power into these chips. Each of these chips is almost as big (in terms of silicon area) as a 6502, so the three of them together provide a tremendous amount of power. Mastering the Atari 8-bit computers is primarily a matter of mastering these three chips. 6502/SALLY Central Processing Unit (CPU) -- SALLY,XL/XE:CO14806 ========== While the 400/800 models contain a generic 6502B CPU (a faster version of the original 6502A microprocessor), all of the XL/XE models contain Atari's customized 6502C chip, known as SALLY. On the Atari, there are two microprocessors, ANTIC and the 6502. To allow them to coexist, ANTIC must shut off the 6502, a process called DMA. The 6502B supports DMA, but in Atari's implementation, it required 4 chips. The 6502C has an extra line called HALT. It is controlled by ANTIC which uses it whenever it needs the data/address bus. The HALT line is on pin 35 of the Atari 6502C and must be pulled high for the chip to work. ANTIC -- 400/800,NTSC:CO12296 400/800,PAL:CO14887 ===== XL/XE,NTSC:CO21697 XL/XE,PAL:CO21698 ANTIC ("Alpha-Numeric Television Interface Circuit") is a microprocessor dedicated to the television display. It is a true microprocessor; it has an instruction set, a program (called the display list), and data. The display list and the display data are written into RAM by the 6502. ANTIC retrieves this information from RAM using direct memory access (DMA). It processes the higher level instructions in the display list and translates these instructions into a real-time stream of simple instructions to GTIA. CTIA/GTIA -- CTIA,NTSC:CO12295 GTIA,PAL:CO14889 ========= GTIA,NTSC:CO14805 FGTIA,SECAM:CO20120 CTIA ("Color Television Interface Adapter") / GTIA ("Graphics Television Interface Adapter") is a television interface chip. ANTIC directly controls most of GTIA's operations, but the 6502 can be programmed to intercede and control some of GTIA's functions. GTIA converts the digital commands from ANTIC (or the 6502) into the signal that goes to the television. GTIA also adds some factors of its own, such as color values, player-missile graphics, and collision detection. Alternate acronym expansions (who can say which are official?) CTIA: "Color Television Interface Adapter" "Colleen Television Interface Adapter" GTIA: "Graphics Television Interface Adapter" "George's Television Interface Adapter" (George McLeod, chip designer) "General Television Interface Adapter" Early North American 400/800 models shipped with CTIA. Later 400/800 models, all European 400/800's, and all later 8-bit Ataris included GTIA. Jerry Jessop adds: "The very first proto systems did have the GTIA, but it had some problems and was not released in the consumer version until 1981. The GTIA was completed before the CTIA." In BASIC, type POKE 623,64 [RETURN] and if the screen blackens, you have the GTIA chip. If it stays blue, you have the old CTIA chip. Clay Halliwell provides this tidbit: A bit of trivia: CTIA 400/800s artifact in blue/green, GTIA 400/800s artifact in green/blue, and all XL/XEs artifact in red/blue. Atari designed a version of GTIA called FGTIA for SECAM video output (France). Jerry Jessop explains why Atari computers lacking FGTIA produce fewer colors on a SECAM display device (France): "I will tell you why it only has monochrome out, because it's SECAM and a SECAM GTIA was never produced. The PAL GTIA is used in France and the Lum outputs are run into an onboard encoder to produce a "pseudo" color depending on the Luminance output, composite only. This is why a SECAM VCS or 800 has nowhere near the same number of colors (16) availible as a PAL or NTSC unit (256). The FGTIA was never completed as the market size did not warrant the expense. The largest SECAM market is not France but the Soviet Union (former) and in 80-84 sales of these items there were not possible." POKEY -- CO12294 ===== POKEY (name derived from POtentiometer and KEYboard) is a digital input/output (I/O) chip. It handles such disparate tasks as the serial I/O bus, audio generation, keyboard scan, and random number generation. It also digitizes the resistive paddle inputs and controls maskable interrupt (IRQ) requests from peripherals. All four of these LSI chips (6502/SALLY, ANTIC, CTIA/GTIA, POKEY) function simultaneously. Careful separation of their functions in the design phase has minimized conflicts between the chips. The only hardware level conflict between any two chips in the system occurs when ANTIC needs to use the address and data buses to fetch its display information. To do this, it halts the 6502 and takes control of the buses." FREDDIE -- CO61922, CO61991 ======= The 65XE/130XE/800XE/XEGS contain a small additional LSI called FREDDIE, a RAM address multiplexer. According to James Bradford, "FREDDIE is a type of memory controller. It takes the address and clock from the CPU and multiplexes it with the appropriate timings and signals to use DYNAMIC memory. FREDDIE also buffers the system clock crystal and divides it down then feeds that to GTIA. The XEGS has a FREDDIE but it doesn't have the extended RAM. Even if it did, you would still need the chip that does the REAL bank switching. It is a small 16-pin chip (Atari/Best Electronics catalog number CO25953: rev9/page 42). It gets RAS from FREDDIE, the bank select bits from PIA, A14, A15 and the 6502 halt signal to control which bank of 8 chips RAS goes to. A14 and A15 then go to FREDDIE for the address range of the extra memory bank (or normal address range with no bank switching). The ANTIC/6502 select bits in combination with the 6502 halt line, control the switching of the PIA bank number bits to A14/A15 and which bank of memory RAS goes to. Why people say FREDDIE does the bank switching is beyond me. An 800XL can look like a 130XE with that 16-pin chip installed (That's right NO FREDDIE) and an extra 8 RAM chips." And more recently James Bradford has written: FREDDIE is just a memory decoder and timer. It replaces several chips in the 800XL. The small chip near FREDDIE does all the bank selection. CO25953. One line from FREDDIE, Ras (or is it cas?) goes to this chip, Halt and the bank /processor select lines go into this same chip and ras (cas?) comes out. A pin for each bank. If I remember correctly, refresh also goes into this small chip. It would be quite easy to make an 800XL work just like a 130XE with this chip since Ras (Cas?) is required by ALL dynamic RAM. ====== Technical data sheets and schematics for the ANTIC, GTIA, and POKEY chips were available on Curt Vendel's web site, thanks to permission from Hasbro's Atari Interactive Division's release of this data. A site that mirrored the high-res images as PDFs: http://www.retromicro.com/ Keith Howell has converted the hi-res TIFFs into clean HTML: http://www.howell1964.freeserve.co.uk/Atari/800XL/Atari_800XL.htm
Top Document: Atari 8-Bit Computers: Frequently Asked Questions
Previous Document: 1.10) What is the Atari XE?
Next Document: 1.12) What is the internal layout of the 8-bit Atari?
Single Page
[ Usenet FAQs | Search | Web FAQs | Documents | RFC Index ]
Send corrections/additions to the FAQ Maintainer:
Michael Current <michael@mcurrent.name>
Last Update July 25 2008 @ 00:11 AM