encore: atari’s second system

42
Encore: Atari’s Second System Joe Decuir, Atari Alumnus Standards Architect, CSR Distinguished Lecturer, IEEE Consumer Electronics Society [email protected]

Upload: clovis

Post on 25-Feb-2016

32 views

Category:

Documents


0 download

DESCRIPTION

Encore: Atari’s Second System. Joe Decuir, Atari Alumnus Standards Architect, CSR Distinguished Lecturer, IEEE Consumer Electronics Society [email protected]. Agenda. Lessons Atari learned from the Atari VCS (aka 2600) The competitive landscape in the late 1970s - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Encore: Atari’s Second System

Encore:Atari’s Second System

Joe Decuir, Atari AlumnusStandards Architect, CSRDistinguished Lecturer,

IEEE Consumer Electronics [email protected]

Page 2: Encore: Atari’s Second System

Agenda• Lessons Atari learned from the Atari VCS (aka 2600)• The competitive landscape in the late 1970s• How we decided the target market• How we decided the hardware features• How we decided the software features• Ported Arcade games• Original games: Star Raiders• The development ecosystem• What we learned from the Atari PCS – visions for our third system

Page 3: Encore: Atari’s Second System

Our first success: Atari VCS• This was a good idea, executed surprisingly well

• The hardware was cheap enough, to make it to market in 1977.• The hardware was flexible enough to enable great game designers

• The market concept was simple: take relatively complex contemporary games and bring them home.

• Technical Reference: Racing the Beam, MIT Press, Montfort & Bogost• Social history: Atari: Business is Fun, Goldberg & Vendel

• Crucial: the 6502 was fast enough to allow a line-by-line display• A bit map would have been prohibitively expensive at that time.

Page 4: Encore: Atari’s Second System

Atari 2600

Page 4

Page 5: Encore: Atari’s Second System

Atari 2600: Combat screen

Page 5

Page 6: Encore: Atari’s Second System

Atari2600 system

Page 6

User inputs User outputs

Consoleswitches Joystick

Local I/O ports

Video & Audio I/O

Modulated RF cable

Synthetic videoSynthetic audioTV:

CPUSystem

Plug-incartridge

Page 7: Encore: Atari’s Second System

Atari2600systemdiagram

Page 7

Page 8: Encore: Atari’s Second System

Lessons Atari drew from the VCS’ success1. Make a flexible system; the programmers are smart

• Bill Joy says: ‘design your product around the assumption that not all of the smart people in the world work for your company’.

• Allow for self development: let programmers use the machine itself to develop new games and/or other applications

• This would generate recursive feedback: the system with the biggest source of applications (e.g. games) would attract the most sales.

2. For games, allow the programmers to follow the beam, even if we don’t know what all they will do with that flexibility

3. In a new design that has a screen map (bit map or character map), use that memory efficiently.

Page 9: Encore: Atari’s Second System

1977: two kinds of competitionVideo Game consoles• Colecovision• Mattel Intellevision• Fairchild Channel F

Personal Computers• S-100 machines• Apple II (next slides)• Commodore PET• Radio Shack TRS-80

Page 9

Page 10: Encore: Atari’s Second System

Competition:Apple II

Page 10

Page 11: Encore: Atari’s Second System

Early Apple II character display: Zork

Page 11

Page 12: Encore: Atari’s Second System

Market Concept• Atari believed that the best home computer would play great games• This dichotomy constantly pulled in two directions:

• What does it take to make a next generation game machine?• What does it take to make a useful home productivity computer?

• Atari brought out two machines in parallel:1. A great game console that could be a computer: Atari 4002. A personal computer that played great games: Atari 800

• From a software standpoint, they were identical• Physical differences:

• membrane keyboard (400) vs full travel keyboard (800) • fixed RAM (400, 8KB) or expandable RAM (800, 8 - 48KB)

Page 12

Page 13: Encore: Atari’s Second System

Application requirements for a consoleThe arcade world was pushing the boundaries: bigger and more complicated playfields and players1. Bit maps, with multiple colors2. Character maps, for repetitive detail3. More moving objects4. The ability to add playfield motion in two dimensions

Page 14: Encore: Atari’s Second System

Hardware requirements for a console• We could afford a screen map with resolution higher than 40 x 24

• We needed to be efficient with a screen display• The original design was 4KB; we got 8KB by buying defective parts.

• We invented graphic character maps, making different use of the same hardware used for monochrome character maps

• We added the ability to scroll a bit map or character map in 2 D• There is hardware support for horizontal and vertical scrolling

• We also extended the ability to do ‘sprites’:• Four 8-bit objects and four 2-bit objects, all independently movable

• We allowed the programmers to make adjustments in a screen vertically: change colors, move objects, scroll, change character sets, etc

Page 15: Encore: Atari’s Second System

Character maps and bit maps• ANTIC contained a Display List Processor

• a simple parallel processor with a few instructions.

• These instructions chose the graphics mode, scrolling, and interrupts• These graphics modes could be mixed on a logical line-by-line basis:

• Bit maps: 320x1 bit (monochrome); 160x2 (4 color); 80x1; 80x2; 40x2• Character maps: 40x8x8x1 (monochrome); 40x8x4x2 (4 color)

• RAM budgets:• Hi res bit map: 320x192x1 =7680 bytes, almost all standard RAM (8KB)• 4 color bit map: 160x96x2 = 3840 bytes, almost all of the original RAM (4KB)• Monochrome alphanumeric characters: 40x24x8 = 960 bytes• 4 color character map: 960 bytes + 2048 byte character set

• Note: monochrome or color character maps could be in ROM

Page 16: Encore: Atari’s Second System

Placeholder for demo• Atari monochrome character mode• Atari graphics character mode

• Set character set pointer to random data in the OS

• Atari graphics: 320x1, 160x2• Type in a simple plot program

Page 17: Encore: Atari’s Second System

Atari 400

Page 18: Encore: Atari’s Second System

Atari PCS diagram – from De ReAtari

Page 19: Encore: Atari’s Second System

Application requirements for a computerThe hardware requirements were driven by the killer software applications:1. Word processing – e.g. Atariwriter2. Spreadsheets – e.g. VisiCalc3. Basic programming – Atari and Microsoft4. Communications = terminal emulation over a modem

Page 20: Encore: Atari’s Second System

Hardware requirements for a computer1. Character display

• we limited ourselves to a home TV, so we had to accept a limit of 40 characters/line

2. Enough RAM for the applications• We used DRAM, not SRAM. This required refresh cycles

3. Mass storage on diskettes4. A printer port5. Serial communication for terminal emulation

Page 21: Encore: Atari’s Second System

Atari 800 system with 3 SIO peripherals

Page 22: Encore: Atari’s Second System

Atari 800 ‘tank’ internal boards

Page 23: Encore: Atari’s Second System

Complete Atari 800 system w/SIO & peripherals

TV or Monitor

w/speakers

Atari PCSCPU

Atari 810FDD

Atari 850I/O Ports

Centronix-Compatible

Printer

300/1200 bpsModem

video audio

SIO

ParallelPrinter Port

Serial Port

Phonecable

ToPSTN

Page 24: Encore: Atari’s Second System

The external I/O requirement problems• The Apple II has slots!

• This made general I/O expansion easy

• How they got slots: Apple did NOT include an RF TV modulator• Including one would subject them to FCC regulations that they could not

meet• The base Apple II would drive a separate monitor

• Wozniak did a great job of moving diskette IO functions from an expensive diskette controller ASIC to 6502 firmware

• This made an Apple II with two diskette drives cost effective in 1979

• A simple expansion card could drive a Centronix printer• A more complicated card could hold an internal 300 bps modem

Page 25: Encore: Atari’s Second System

Atari had a new problem• Personal computer or video game console systems generate

substantial radio frequency interference.• Modern systems need RFI shielding to pass FCC class B tests

• The FCC had I Type requirements for anything connected to a TV antenna

• This is before they relaxed them all in 1980 when they established class B

• Atari’s decision to confine video to a TV required designing to pass FCC Type I, which were over 20 dB tougher than class B

• The Atari 2600 was contained, and didn’t need peripherals• It was a victory when the FCC decided that changing cartridges didn’t matter

• This raises the huge question: how could Atari expand a system?

Page 26: Encore: Atari’s Second System

Atari had two answers• For RAM expansion, Atari put expansion slots inside the Atari 800 case

• That entire system fit within an aluminum casting about 1mm thick• In your physics classes, these are called Faraday cages

• For all other expansion, Atari had to invent new: a Serial IO Bus.• The data rate was set to 19,200 kbps, quiet enough for the FCC• This was easily fast enough for external printer ports• This was easily fast enough for the dial up modems we imagined at the time• This was tolerable enough for diskette drives from the time, but those devices

got a lot faster• This was completely inadequate for hard discs, but these were prohibitively

expensive in 1979

Page 27: Encore: Atari’s Second System

Costs of Serial IO Expansion• The decision to use home TVs AND to support external computer I/O

functions drove a lot of COST into a COMPLETE SYSTEM.• The Atari 810 single diskette device was a parallel computer subsystem with

another 6502, ROM, RAM, SIO IO, diskette IO, the physical drive and power• The Atari 820 printer was another parallel computer with a 6502, ROM,

RAM, SIO IO, a 40 column printer mechanism and power• The Atari 850 expansion devise had another 6502, RAM, ROM, SIO IO, a DB-

25 Centronix printer interface, four DB-9 RS-232 serial interfaces and power• A complete useful system was too expensive to be competitive with an

Apple II

Page 28: Encore: Atari’s Second System

Atari 850 Interface

Page 29: Encore: Atari’s Second System

Atari850board

Page 30: Encore: Atari’s Second System

SIO bus pins1. Clock input2. Clock output3. Data Input4. Ground5. Data output6. Ground7. Command (PC to peripheral)

8. Motor Control (cassette)9. Proceed (flow on)10. +5v DC/Ready11. Audio input (cassette)12. +12v DC13. Interrupt (peripheral to PC)

Page 31: Encore: Atari’s Second System

Atari system software – the Atari OS• Atari accepted that the system would come with an operating system• That would perform what we call a BIOS = Basic Input Output System• All the essential internal IO is abstracted via IO Control Blocks (IOCB)

• Get character, put character, etc

• This included drivers for bundled devices:• S: (Screen); K: (Keyboard); E: (Editor)

• This also included drivers for anticipated SIO devices: • D: (disk); P: (printer); R: (RS-232 serial); C: (cassette)

• The BIOS is 8K; we also added 2K of floating point math• The rest of the system was allocated to the Disk Operating System (DOS)

• e.g. file management)

Page 32: Encore: Atari’s Second System

Personal productivity and educationPersonal Productivity and Communications• Atari produced Atariwriter• Software Arts produced VisiCalc, compatible with the Apple II version• Synapse produced a suite of tools: Syncalc; Syntrend; Synfile• Broderbund produced Print Shop• Atari Shipped Telelink I as a terminal emulator for BBS accessEducation• Atari produced the “Education System” cartridge, which used content on

cassette – both digital content and recorded narration• Atari also produced the Pilot programming cartridge and toolkit.• Fisher Price produced “Linking Logic”

Page 33: Encore: Atari’s Second System

Ported Arcade GamesDemo samples in hand:• Asteroids• Donkey Kong• Galaxian• Missile Command• PacMan• Space Invaders

Page 34: Encore: Atari’s Second System

Best original game: Star Raiders

Page 35: Encore: Atari’s Second System

Programming languages• Atari approached Microsoft for Basic

• Their version took 12K

• Microsoft went to Shepherd Microsystems (aka OSS) for an 8K version• Microsoft also sold their BASIC II as a ‘cross compatible’ version

• Atari, OSS and Synapse produced 6502 Assemblers • OSS shipped Tiny C• OSS shipped Action! Which was optimized for game design• FORTH was available from the Atari Program Exchange (APX), and two other

companies• LOGO was available, for educational uses• LISP was available

Page 36: Encore: Atari’s Second System

Development environment• This was the first ‘game console’ that could do ‘self development’• The system documentation was very good:

• from Atari, from APX (De Re Atari), and several 3rd parties

• There were several self assemblers: Atari, OSS, Synapse• I am not aware of commercial single-step monitors; Atari had them

• There were higher level languages: Action!, Tiny C• Programmers could write games directly to diskette for small markets

• Their customers had to own an FDD, which cost a lot

• The could also use PROM programmers to generate cartridge prototypes: • Example: Thompson Electronics’ Proburner fits into a cartridge slot

Page 37: Encore: Atari’s Second System

Dedicated game console: Atari 5200

Page 38: Encore: Atari’s Second System

Lessons learned, and not learnedAs a game console:• We did provide good self-development tools to attract developers• The founders of Activision and Imagic had not left yet, so Atari was

not afraid of third-party developers – that happened laterAs a computer:• Massive cost reduction possible after FCC changed the rules

• The Commodore C64 passed Atari at this point

• Atari should build a unit with integrated FDD• Atari could build an expansion unit with hardware slots

Page 39: Encore: Atari’s Second System

Concepts for a 3rd systemAs a game console:• Cartoon-level animation• Accelerate bit map manipulation in hardware• Synchronize with external video (genlock)

As a computer:• 80 column character displays• Enough bit mapped memory for a Xerox Alto-like ‘window’ OS• Larger memory: 128KB or more• Built in 3.5” FDD• Expansion to HDD

Page 40: Encore: Atari’s Second System

Visions of a 3rd system:

Amiga 1000Read: “The Future Was Here” by Jimmy Maher, MIT Press

Page 41: Encore: Atari’s Second System

Resources:• Racing the Beam, MIT Press (eBook and hardcover)• The Future was Here, MIT Press (eBook and hardcover)• Atari: Business is Fun (softcover)• De Re Atari, Chris Crawford (softcover and web)• Atari Home Computer System: Hardware Manual; Operating System User

Manual; Operating System Source Listing• Mapping the Atari, Chadwick• Your Atari Computer, Osborne• The Mythical Man-Month, Brooks• Art of the Video Game, Smithsonian• Web pointers

Page 42: Encore: Atari’s Second System

More Questions?

42