10

http://atariage.com/forums/topic/172580-antic-decap-and-reverse-engineering/ contains an annotated die photo of ANTIC, the Atari 800 video chip. It's interestingly different from the VIC-II; in particular, there isn't the sheer bulk of sprite circuitry, presumably because it doesn't have as much in the way of sprites.

The large regular block is identified by people on the thread as memory.

How much on chip memory does ANTIC have? What is it used for? Sprite data? Or does it have other stuff like the way the VIC-II has to store forty bytes of characters?

2 Answers 2

5

It's interestingly different from the VIC-II;

Not at least, because they represent complete different concepts. ANTIC is just a half of the graphics system, G/CTIA being the other.

The VIC-II is fixed in its capabilities, with its DMA being tied to simple display fetches. ANTIC's DMA is way more fexible and programable (Keyword here is Display List programing)

in particular, there isn't the sheer bulk of sprite circuitry,

These are within the 32 Registers of the G/CTIA, which in turn gets feed by DMA access from memory, controlled by the ANTIC.

presumably because it doesn't have as much in the way of sprites.

It doen't need them. Where the VIC-II needs dedicated RAM to store limited sprites, the ANTIC/GTIA pair uses the whole CPU memory to produce unlimited sized (in height at least) sprites.

How much on chip memory does ANTIC have?

Dependign on how one counts 48 to more than 70, as the registers also data. The 'huge' 48 byte block is only the line buffer.

What is it used for? Sprite data? Or does it have other stuff like the way the VIC-II has to store forty bytes of characters?

Somewhat. For text display it's much like with the VIC, but it also works for grapic modes. Depending on the mode selected for that line 8 to 48 bytes are loaded with character (name) or grapics data. And kept for the following lines.

8

The Altirra emulator manual describes the operation of the ANTIC in some detail, and says

A 48 byte buffer within ANTIC is used to store graphic data for a single scan line. Its purpose is to buffer data for use on repeated scan lines, reducing DMA overhead. For bitmap modes, it allows ANTIC to only read graphics data for a mode line once, during the first scan line. For character modes, it holds the character name data which is then repeatedly used to fetch each scan line of character data from the character set.

Because only character names are buffered in character modes and not character data, the two text modes that have double-height characters ­ modes 5 and 7 ­ must still fetch character data on every scan line even though half of the fetches are redundant.

If you count the SRAM cells in the photo, you'll see 48 rows of 8 bits. So it is indeed 48 bytes SRAM. Yes, SRAM is huge.

You must log in to answer this question.

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