Atari 800 in store demo

2006-10-10

When I was in high school the Atari 800 had just come out. Back then this demo was the most inspiring thing ever! I would look at this demo and think computers were going to change the world. How I could imagine all that from this demo is hard to fathom I guess but I did.

It was one of the first Atari demos to show 128 colors on the screen (the beginning logo) and that was actually good music for a computer back then.

The Apple 2 could only display 16 colors in low−res and 6 in high and only had a click speaker. Other systems out at the time were the Tandy Radio Shack 80 (TRS−80) and the Commodore Pet. The Commodore 64 had not yet come out yet so the Atari 800 was in a field by itself graphically.

The Atari 800 also had some unique features. It had hardware sprites making it possible to more easily move stuff on the screen with 1mhz processor. Think of a sprite as a cut out piece of cellophane you can put on top of the rest of the display and move it around without effecting the rest of the display. The Atari 800 called them Players and Missles. Players were 8 pixels wide and the height of the screen, Missles were 2 pixels wide. Who ever made them I guess imagined 4 player asteroids or something. They were only 1 color each.

Back then the Atari 800, Commodore Pet, TRS−80 and Apple 2 all had cassette tape storage as their cheapest options. The Atari 800 one though had a special feature in that it used only one channel for data and it could playback the other channel. So for example I think it was the game "Kingdom" had this professionally sounding intro while it loaded that played off the tape that made it seem so high tech.

The Atari 800 was also made by smart engineers. Of the 4 major 8 bit machines (Apple 2, Atari 800, Commodore 64 and TRS−80) only the Atari had an organized and clean OS. To give you some examples it had a driver based I/O system so that other storage devices could be added without the programs underneath them having to know. Contrast this to the Apple 2 where a floppy drive was never considered when it was first created and in order to get it to work they hacked it in and from basic the only way to issue commands was to do print statements with the first character being a Ctrl−D (for Disc).

Another example, the 6502, the CPU that powered the Apple 2, Commodore 64, Atari 800 and even the NES has special instructions that only work with the first 256 bytes of memory. The Commodore 64 and Apple 2's OSes and their built in BASICs used nearly all of those 256 bytes willy nilly making it hard to code for without messing things up. The Atari specifically only used the first 128 leaving the other 128 for user programs.

The Atari had a complex graphics system with 15 modes. Mode 0 was the standard 40x24 text mode. Mode 1 was a larger 20x24 text mode. Mode 2 was even larger 20x12 text mode. Mode 3 was a super low−res 40x24 graphics mode with 4 colors. It only took 240bytes to display the entire screen. After that they kept going up. Mode 7 was 160x192 3 colors and mode 8 was 320x192. The OS had one set of commands that worked with all modes unlike the hacked Apple 2 that required a different set of commands for low−res vs high−res.

Even more interesting the standard modes were just a simplification. The actual hardware worked by following a list of mode commands so you could make a custom list that might be 8 lines of mode 6, 1 line of mode 1 (large text) and 84 lines of mode 6. In fact that's how Star Raiders displayed its messages. On top of that each line could point to a separate place in memory so your drawing code didn't have to have special exceptions to do messages like in Star Raiders. It could draw the stars in one piece of memory and the message it wanted to display in a completely different piece of memory. If you gave it a list where each line pointed to the previous memory you could make a display that was accessed bottom to top instead of top to bottom. Or, make every line point the same memory for some super fast effects.

This also made hardware scrolling much easier. Submit a list where each line advances 1000 bytes instead of the default 40 and you'd be looking into a window a 1000 characters wide. To scroll over it you only needed to update the line list, not the actual graphics.

As far as I know the Atari was also the first home computer to support "overscan". Most home computers were designed to be connected to a TV and as such they only used a portion of the screen leaving a thick border around the edges so text and graphics don't get cutoff. The other systems all have that feature hardcoded but with the Atari it was just part of the mode list. The standard mode list would say 24 lines of blank, followed by 24 lines of mode 0 text at 40 characters per line, followed by another 24 lines of blank. But, you could give it a custom list, for example 32 lines of mode 0 text at 48 characters per line and you'd have no border whatsoever. Until recent PC graphic cards started having overscan options the only other home computer that could do anything like this was the Commodore Amiga. Funny because it was designed by the same people.

I ended up learning the Atari 800 inside and out. I could hand enter in hex a program to the rainbow effect you see on that opening logo.

Comments
LocoRoco Book and CD
Sending Japanese EMail from Perl