# Asteroids

Asteroids è un videogioco arcade a grafica vettoriale realizzato da Atari nel 1979. È considerato uno dei videogiochi più famosi della storia, nato nell'età d'oro dei videogiochi arcade, ideato da Lyle Rains e disegnato e programmato da Ed Logg. In Asteroids il giocatore deve guidare una navicella spaziale attraverso un campo di asteroidi occasionalmente attraversato da dischi volanti: lo scopo del gioco è quello di colpire e distruggere gli asteroidi e i dischi volanti senza entrare in collisione con essi e senza essere colpiti dal fuoco dei dischi volanti.

## Storia
### Le origini

Originariamente il gioco, che si doveva chiamare Cosmos, era molto simile a Space Wars con la semplice aggiunta degli asteroidi come dettaglio estetico. Successivamente venne elaborata una nuova idea: i pianeti. Venne ideato un gioco, denominato Planet Grab, che consisteva nel "catturare" i pianeti semplicemente toccandoli con la navicella, con la possibilità però di distruggere i pianeti presenti nello schermo mentre si combatteva con l'avversario.
A dare la svolta definitiva al progetto fu Lyle Rains che due anni dopo Cosmos rielaborò quell'idea iniziale proponendo le basi dell'innovativo Asteroids, programmato poi magistralmente da Ed Logg.
Gli effetti sonori furono invece curati da Howard Delman: per la musica di sottofondo scelse un tema dai toni molto bassi che ricordava il battito cardiaco e che aveva la particolarità di aumentare la frequenza dei "battiti" man mano che gli asteroidi sullo schermo diminuivano, per sottolineare l'aumento di tensione del giocatore stesso.

### Il successo

Asteroids ebbe subito un enorme successo, perfino all'interno degli studi dell'Atari, dove i programmatori erano costretti a cacciare gli altri dipendenti dell'azienda dalle macchine prototipo.
Anche il gruppo dirigenziale di Atari era entusiasta del nuovo gioco tanto che tagliò bruscamente la distribuzione di un gioco che aveva iniziato a far produrre soltanto qualche manciata di mesi prima, Lunar Lander. Addirittura le prime 200 macchine di Asteroids furono messe in commercio riutilizzando i cabinet di Lunar Lander, con tanto di decalcomanie attaccate.
La fiducia fu ben riposta in quanto in breve tempo il gioco spopolò in tutto il mondo divenendo l'arcade Atari più venduto, con 56.565 unità prodotte (47.840 con cabinet di tipo verticale e 8.725 con cabinet di tipo "a tavolino").

## Modalità di gioco

Il gioco è piuttosto semplice. Il giocatore comanda una navicella (rappresentata da un triangolo) intrappolata in un campo di asteroidi. Lo scopo è distruggere tutti gli asteroidi nelle vicinanze. Lo spazio in cui si muove la navicella è toroidale: questo significa che se un oggetto esce dalla parte destra dello schermo ricompare dalla parte sinistra, se esce dalla parte alta riappare nella parte bassa.
Gli asteroidi, una volta colpiti, si dividono in due frammenti più piccoli, che a loro volta si scinderanno se colpiti nuovamente; questa operazione deve essere dunque ripetuta due volte per poter distruggere definitivamente ogni asteroide.
La difficoltà principale del videogioco è costituita dal tentativo di riprodurre alcuni leggi fisiche reali all'interno dei meccanismi di gioco, le quali influenzano il movimento degli oggetti presenti sullo schermo. In Asteroids viene infatti introdotta la forza d'inerzia, che rende alquanto difficoltoso il controllo dell'astronave; allo stesso modo, gli asteroidi, una volta colpiti, modificano la loro direzione e la loro velocità.
Un'altra minaccia arriva da un disco volante, una navicella aliena che fa saltuariamente la sua comparsa nello schema di gioco: essa percorre lo schermo sparando in direzione del giocatore, rendendo l'ambiente ancora più pericoloso.
Il numero di asteroidi presenti all'inizio del 1º livello è di 4: successivamente il numero aumenta di 2 per ogni livello fino a raggiungere il massimo di 12 (dal 5º livello in poi).

### Punteggi

* Asteroide Grande - 20 punti
* Asteroide Medio - 50 punti
* Asteroide Piccolo - 100 punti
* Disco Volante Grande - 200 punti
* Disco Volante Piccolo - 1000 punti

## Controlli

A differenza della maggior parte dei videogiochi arcade, il sistema di controlli di Asteroids è composto esclusivamente da pulsanti. I due pulsanti collocati a sinistra permettono di ruotare l'astronave, rispettivamente in senso orario e antiorario. I due pulsanti a destra servono, rispettivamente, a sparare e ad attivare il propulsore per muovere l'astronave. Il movimento dell'astronave è quindi gestito dall'uso combinato di tre pulsanti che richiedono una buona dose di coordinazione tra le due mani, ma anche una grande abilità da parte del giocatore che, a seconda dei casi, deve capire se spostare l'astronave sia la soluzione migliore per sfuggire agli asteroidi o se invece possa essere pericoloso.
Infatti, poiché il videogioco simula in maniera decisamente efficace l'inerzia di un corpo che si muove nello spazio aperto, il giocatore è costretto a utilizzare con molta attenzione il propulsore: premerlo troppo a lungo significa perdere il controllo dell'astronave, la cui traiettoria non può essere modificata se non ruotando la navicella e attivando nuovamente il propulsore. L'unico modo per frenare -senza aspettare la fine del movimento inerziale- è, invece, ruotare l'astronave di 180° e utilizzare il propulsore come freno. Questo sistema di controllo impedisce al giocatore di esagerare con le manovre evasive.
Al centro delle due coppie di pulsanti, collocato leggermente più in basso, vi è il tasto del teletrasporto, che fa ricomparire l'astronave in un punto a caso dello schermo. Il suo utilizzo è altamente rischioso, in quanto l'astronave può riapparire sulla traiettoria di un asteroide: pertanto è un tasto da utilizzare esclusivamente in situazioni estreme, quando il giocatore si rende conto di non avere altra scelta.

## Dettagli tecnici

L'arcade Asteroids è una macchina da gioco vettoriale, vale a dire che la grafica è composta interamente da linee che sono disegnate da un monitor vettoriale: un monitor vettoriale è basato su un tubo a raggi catodici come quello televisivo ma disegna le immagini similarmente ad un oscilloscopio pilotando il giogo di deflessione in corrente creando così l'immagine. L'hardware si basa principalmente su una CPU MOS 6502 a 1,512 MHz, che esegue il codice del gioco, e su una circuiteria di gestione della grafica vettoriale denominata Digital Vector Generator (o DVG), sviluppata dalla stessa Atari. Dato che la CPU 6502 sarebbe risultata troppo poco potente per gestire sia il gioco stesso sia l'hardware vettoriale, la gestione di quest'ultimo fu delegata al DVG.
Le caratteristiche del DVG furono originariamente sviluppate dal laboratorio di ricerca che Atari aveva a Grass Valley (California) nel 1978. Il prototipo del DVG fu dato all'ingegnere Howard Delman che lo perfezionò e lo produsse nella sua forma finale, aggiungendo alcune caratteristiche per il primo gioco vettoriale di Atari, Lunar Lander. Quando fu deciso che anche Asteroids sarebbe stato un gioco vettoriale, Delman modificò una scheda di Lunar Lander da dare a Ed Logg, il programmatore che aveva avuto in carico la realizzazione del gioco: aggiunse più memoria ed aumentò la circuiteria per la gestione dei numerosi suoni del gioco.
Ad ogni fotogramma, il 6502 scriveva i comandi da inviare al DVG per disegnare la grafica in un'area di memoria ben definita (chiamata vector RAM) dopodiché inviava al DVG l'ordine di comporre l'immagine vettoriale sullo schermo. Il DVG leggeva questi comandi grafici e generava gli appositi segnali per pilotare il monitor vettoriale: il DVG aveva comandi per posizionare il raggio catodico, per disegnare una linea fino ad un determinato punto, per chiamare un sotto-programma per ulteriori comandi, ed altro ancora.
Asteroids aveva anche diversi effetti sonori, ognuno dei quali era reso da un particolare circuito: Delman dovette disegnare 7 distinti circuiti audio per gli altrettanti suoni del gioco. La CPU attivava questi circuiti audio (e gli altri componenti hardware) scrivendo in speciali indirizzi di memoria (porte mappate in memoria); i comandi impartiti dal giocatore tramite i controlli del gioco (i pulsanti) erano anch'essi mappati in precise locazioni della memoria mappata dalla CPU.
Il codice principale del gioco Asteroids utilizzava 6 kB di memoria e risiedeva su ROM; altri 2 kB di dati (sempre su ROM) contenevano la descrizione degli elementi grafici del gioco (gli asteroidi, i dischi volanti, l'astronave del giocatore, le immagini delle esplosioni, le lettere e le cifre numeriche) sotto forma di comandi DVG.

## Serie

Asteroids diede inizio a una serie di titoli arcade ufficiali:
* Asteroids (1979)
* Asteroids Deluxe (1981)
* Space Duel (1982)
* Blasteroids (1987)
Il primo Asteroids venne convertito ufficialmente per le piattaforme domestiche Atari 2600 e Atari 8-bit nel 1981, poi per Atari 7800 e Game Boy, e più tardi incluso in raccolte di emulazioni per piattaforme più moderne, quali Arcade's Greatest Hits - The Atari Collection 1, Atari Anniversary Edition, Atari Anthology.
Un remake autorizzato, intitolato Asteroids o Asteroids 3D in Europa, uscì nel 1998 per Game Boy Color, Macintosh, PlayStation e Windows.
La stessa Atari pubblicò Super Asteroids and Missile Command per Atari Lynx nel 1995, Asteroids & Deluxe per Xbox 360 nel 2007, comprendente anche il remake di Asteroids Deluxe, e Asteroids Online per browser nel 2010.
Molto numerose sono le imitazioni e varianti che Asteroids ha ispirato negli anni, per ogni genere di piattaforma.
Nel 1982 Asteroids ha ispirato una canzone del duo Buckner & Garcia dal titolo Hyperspace: la canzone, oltre a parlare del gioco, contiene effetti sonori originali; è inclusa nell'album a tema videoludico Pac-Man Fever.
Il gioco è contenuto come easter egg anche all'interno dell'oscilloscopio Agilent HP 54622D, dove può essere attivato eseguendo una determinata sequenza di comandi.

## Bootleg

Visto l'enorme successo commerciale che il gioco riscosse all'epoca, alcune ditte tentarono di creare dei bootleg di Asteroids. Comparvero quindi sul mercato Meteorites di VGG, Asterocks dell'italiana Sidam, e altri.
Di quest'ultima è interessante parlare perché rappresenta uno dei primi casi di citazione in tribunale per violazione dei diritti d'autore in Italia. L'allora distributore esclusivo per l'Italia delle macchine Atari, la F.lli Bertolino S.r.l., e la stessa Atari, citarono Sidam per i suoi giochi identici ad Asteroids ed altri titoli Atari. Fu trovato che molte porzioni delle ROM originali Atari erano presenti nei giochi distribuiti da Sidam, compreso Asterocks, che incorporava il codice di Asteroids. Le uniche differenze riguardavano le routine sonore, che nelle macchine Atari erano controllate da un chip custom progettato da Atari stessa e denominato POKEY, e quelle per la gestione della gettoniera. Sidam affermò che tali somiglianze erano solo "coincidenze" e si appellò al fatto che il diritto d'autore italiano non menzionava direttamente i programmi per computer. Ma la corte che esaminava il caso dette ragione ad Atari condannando Sidam per plagio perché classificò i videogiochi come opera dell'ingegno, facendoli quindi rientrare nella categoria del materiale protetto. Fu, questa, una sentenza che fece giurisprudenza.