[ Usenet FAQs | 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 video game system?
Next Document: 1.12) Why do the ANTIC Modes start with "Mode 2", what about 0 or 1?
-
Search the FAQ Archives
Single Page
Top Document: Atari 8-Bit Computers: Frequently Asked Questions
Previous Document: 1.10) What is the Atari XE video game system?
Next Document: 1.12) Why do the ANTIC Modes start with "Mode 2", what about 0 or 1?
1.11) What are SALLY, ANTIC, CTIA/GTIA/FGTIA, POKEY, and FREDDIE?
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, CO12298/CO14795, a 6520). However, it also has three special-purpose large- scale integration (LSI) chips known as ANTIC, one of CTIA/GTIA/FGTIA, 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 ========== 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. 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. ANTIC -- 400/800/1200XL,NTSC:CO12296 400/800,PAL:CO14887 ===== 600XL/800XL/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 CTIA/GTIA/ FGTIA. CTIA/GTIA/FGTIA -- CTIA,NTSC:CO12295 GTIA,PAL:CO14889 =============== GTIA,NTSC:CO14805 FGTIA,SECAM:CO20120 The Atari contains one of the CTIA/GTIA/FGTIA television interface chips. ANTIC directly controls most of the operations of the CTIA/GTIA/FGTIA, but the 6502 can be programmed to intercede and control some of the functions of the CTIA/GTIA/FGTIA. The CTIA/GTIA/FGTIA converts the digital commands from ANTIC (or the 6502) into the signal that goes to the television. The CTIA/ GTIA/FGTIA also adds some factors of its own, such as color values, player- missile graphics, and collision detection. There were no consistent official explanations for the acronyms. Sources at Atari variously suggested: "Color Television Interface Adapter" "Colleen Television Interface Adapter" "Graphics Television Interface Adapter" "George's Television Interface Adapter" (chip designer = George McLeod) "General Television Interface Adapter" "French GTIA" ??? (just MC's speculation here) Early North American NTSC 400/800 models shipped with CTIA. Later NTSC 400/ 800 models, all PAL 400/800's, and all NTSC XL/XE and PAL XL/XE systems included GTIA. SECAM 800XL, 130XE and XE game systems included FGTIA. The GTIA is backwards-compatible with the CTIA, with the GTIA simply making available three additional graphics modes (GTIA Modes 1-3). 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." The FGTIA is software compatible with the GTIA. However, in GTIA Mode 1 the FGTIA can only display 8 distinct luminances, compared to the 16 distinct luminances that can be displayed in GTIA Mode 1 by the GTIA. The NTSC CTIA/GTIA were designed to interface with the NTSC ANTIC. The PAL GTIA and the FGTIA were designed to interface with the PAL ANTIC. Whether CTIA or GTIA/FGTIA is installed can be determined by observing what happens as a result of trying to enter a GTIA graphics mode. In Atari BASIC, at the "READY" prompt, type POKE 623,64 [RETURN]. If the screen blackens, you have the GTIA or FGTIA chip. If it stays blue, you have the old CTIA chip. 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 the above LSI chips (6502/SALLY, ANTIC, CTIA/GTIA/FGTIA, 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. "FREDDIE" or "FREDDY"? Atari themselves were inconsistent. It is "FREDDIE" on page 4 of the Atari 130XE Parts List 6/25/85, part of the 130XE Reference Manual released by Atari (U.S.) Corp. in 1990. It is "FREDDY" on page 21 of the XE System Owners Manual, C100608. This FAQ List adopts the convention of Atari's technical documentation: "FREDDIE" ====== 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 video game system?
Next Document: 1.12) Why do the ANTIC Modes start with "Mode 2", what about 0 or 1?
Single Page
[ Usenet FAQs | Web FAQs | Documents | RFC Index ]
Send corrections/additions to the FAQ Maintainer:
Michael Current <michael@mcurrent.name>
Last Update October 22 2009 @ 05:22 AM