MOS 6502: il processore che cambiò il mondo, e probabilmente questa rubrica
Se non fosse stato per il MOS 6502, questa rubrica non esisterebbe. Probabilmente non esisterebbe buona parte dell'elettronica di consumo come la conosciamo. Sicuramente non ci sarebbero stati Commodore 64 e VIC20, pallini del qui presente autore, l'Atari VCS e il NES avrebbero avuto un volto del tutto diverso (se mai ne avessero avuto uno), e non so se saremmo qui a parlarne.
Perché diverse incarnazioni del 6502 sono state usate su diversi computer, anche concorrenti. Dal Commodore 64 all'Apple II, dal VIC20 al NES, dall'ORIC-1 al Super Nintendo, varianti del 6502 hanno costruito la storia e sono entrate nell'immaginario come il processore del primo Terminator, implacabile assassino del genere umano all'inizio della saga e di Bender, irrefrenabile ubriacone della sitcom animata Futurama sempre pronto a godersi a vita e festeggiare alle spalle dei suoi amici "insaccati" (ovvero gli umani).
Ma la storia del 6502 è molto interessante, e nasce dal 6501: un clone del Motorola 6800.
MOS 6502: anzi, partiamo da 6501
La storia del 6502 ha molto in comune con la storia di Activision e in un certo senso si interseca con le vicende di Activision e Atari. Anche in questo caso partiamo da impiegati insoddisfatti, una casa madre pronta a portare tutti in tribunale come unico e solo mezzo per difendere le loro proprietà e un prodotto concorrente.
L'anno è il 1975: Margaret Thatcher diventa leader dei conservatori, Canzonissima arriva all'ultima edizione, Pol Pot diventa il sanguinario dittatore della Cambogia, Lanciostory arriva in edicola, Steve Harris fonda gli Iron Maiden e una ditta anonima e miserella fondata nel 1969, MOS Technology, non comprende che presto arriverà la sua grande occasione.
Molto presto.
MOS Technology, ditta di chip per calcolatrici, nel 1974 era praticamente alla canna del gas, sull'orlo di portare i libri contabili in tribunale e farla finita: Texas Instruments, principale produttore di calcolatrici, era infatti passata a prodursi chip in proprio, e MOS un tempo florida campicchiava vendendo chip per le console di prima generazione, ovvero il Pong di Atari.
Nel frattempo Chuck Peddle e Bill Mensh, ingegneri per Motorola, si erano resi conto di una grande verità: nel mercato degli anni '70 il cliente del futuro non era il danaroso acquirente di sistemi avanzati in grado di scucire oltre 300$ per un Motorola 6800.
Con Intel, Motorola, Signetics e altri produttori di integrati in crisi economica e pronti a licenziare per restare a galla, il duo manifestò alla dirigenza l'idea di creare un "6800 economico" da vendere alla clientela più incline al risparmio, come hobbisti, il pubblico SOHO ("small office, home office", i piccoli uffici e il "lavoro da casa"), conservando il 6800 "normale" per i clienti più evoluti.
La direzione stroncò brutalmente l'idea: a questo punto Peddle e Mensh si portarono via Harry Bawcum, Ray Hirt, Terry Holdt, Mike James, Will Mathis e Rod Orgill e andarono tutti assieme da MOS Technology a proporre il "6800 economico", ovvero il 6501.
Rod Orgill progettò il 6501, che poteva essere inserito negli zoccoli dell'MC6800 perché compatibile a livello di piedinatura con quest'ultimo, mentre Bill Mensch realizzò il 6502, simile al precedente ma con una piedinatura differente e un circuito generatore di clock integrato.
Entrambi i chip videro la luce nel 1975: il 6501 non era compatibile a livello software col 6800, ma poteva essere usato con tutte le mainboard progettate per il 6800 stesso, essendo del tutto compatibile come piedinatura, e la scelta di creare un prodotto volutamente economico conferì alle creazioni MOS Technology il costo di 25$ e 20$, presentati al WESCON di Los Angeles.
Motorola denunciò nello stesso anno MOS, adducendo che i transfughi Motorola avevano usato tecnologia e proprietà intellettuali "rubate" a Motorola per i loro prodotti: tempo un anno e MOS Technology dovette ritirare il 6501 dal commercio, pagando 200.000$ per diritti e danni a Motorola per continuare la produzione dell 6502.
Creando così il più pericoloso rivale del 6800.
MOS 6502: le origini del mito
Le origini del MOS 6502 cominciano così, sottotono per uno dei prodotti più importanti della sua epoca. Nascono in miseria e "autobagarinaggio": alla WESCON non potevi vendere prodotti, ma Chuck Peddle spese il suo tempo alla convention dirottando gli interessati in un vicino hotel dove "la birra era gratis ma i processori costavano 25$"
Al netto dell'inflazione parliamo di circa 150$ di adesso, ma molto, molto meno di quanto avrebbe chiesto Motorola (che fu costretta ad abbassare drasticamente i prezzi dell 6800 per competere col concorrente).
Non c'erano abbastanza processori per una vendita massiccia, ma Peddle mostrò orgoglioso ai potenziali acquirenti barattoli pieni di MOS6502 danneggiati e difettosi coi pochi chip sani in cima per illuderli della capacità di MOS di produrre a pieno regime sin dall'inizio.
Fu un successo immediato, e il calo dei prezzi dell'Intel 8088 e del Motorola 6800 convinsero gli acquirenti che il MOS6502 non fosse una truffa assai creativa ma un prodotto così legittimo da "far paura alle grandi ditte".
La combinazione delle capacità del 6502, del suo basso costo e delle istanze paracomplottistiche che già esistevano all'epoca, per cui un prodotto acquisiva valore solo in quanto in "grado di impensierire l'elite o casta", assicurarono un successo esplosivo per il MOS 6502.
Ma ancora mancava qualcosa perché quel successo si trasformasse in qualcosa di planetario ed eterno.
Dal KIM-1 al Commodore PET
Vi ho spiegato che dal 1976 il MOS6501 sparì dal commercio.
Ciò ebbe un effetto secondario di enorme rilevanza: non c'erano più sul mercato grandi quantità di mainboard in grado di supportare i nuovi processori MOS.
Come si usava all'epoca, MOS Technology si diede al fai da te: Chuck Peddle produsse l'MDT-640 (acronimo per "Microcomputer Terminale per lo sviluppo"), una piattaforma per sviluppatori dall'astronomico costo di circa 4000 dollari, apparentemente dimenticandosi il motivo per cui aveva lasciato Motorola e sviluppato i 650x.
Parallelamente infatti, e fortunatamente, il gruppo di MOS sviluppò un altro sistema per gli sviluppatori, il KIM-1, di fatto il "nonno" del futuro Commodore PET e quindi antenato del concetto stesso dell'informatica di consumo per tramite del Commodore 64.
Con circa 500$ dell'epoca un hobbbista poteva ottenere un computer funzionante con un lettore di cassette per salvare i propri dati, la possibilità di collegarlo ad un terminale ed un alimentatore per uso individuale e la capacità di smanettarci per dotarlo di supporto video nativo e altre caratteristiche.
Non ho usato il termine "hobbisti" a caso. Il KIM-1 era pensato come l'MDT-640 per sviluppatori, ingegneri e programmatori intenzionati a conoscere il 6502. Finì nelle mani di hobbisti e smanettoni dal budget cospicuo ma più limitato di quello di imprese e facoltà universarie e pronti a ridurre ulteriomente quel budget col ricorso al fai da te.
Rivenduto come un "completo microcomputer con un 1Kb di RAM, assolutamente non un kit, assemblato e venduto" il KIM-1 entrò nel mondo dei microcomputer trascinandosi dietro di forza il 6502.
Ma senza esaurirne le enormi potenzialità.
Potenzialità che furono affrontate nei modelli derivati AIM-65 di Rockwell e SYM-1 di Synertek. Ma anche questi prodotti non potevano che grattare la vernice superficiale del successo futuro del 6502.
Successo che arrivò nel 1977, l'anno che abbiamo imparato a conoscere come l'anno dei "Grandi Tre", ovvero dell'inizio della Prima Guerra degli Home Computer tra Commodore, Apple e Tandy-Radioshack.
I grandi tre e l'ascesa di MOS
Ben due dei "Grandi Tre", ovvero il Commodore PET e l'Apple II erano costruiti intorno al MOS6502.
Il terzo, il TRS-80, intorno al Motorola 6809, uno dei processori nati dal tentativo di inseguire MOS con processori più performanti ma meno costosi.
Il Commodore PET era l'evoluzione di fatto del KIM-1, un sistema integrato con tutte le "aggiunte" che il popolo degli hobbysti aveva già incorporato a suo modo (circuiti video, BASIC, Datassette, tastiera ancorché assai scomoda), l'Apple II l'evoluzione dell'Apple I da kit di montaggio per gli smanettoni a prodotto commerciale fatto e finito, entrambi pronti per il lavoro di ufficio secondo la nuova dottrina Tramiel che vedeva il computer sostituto futuro delle calcolatrici e delle macchine da scrivere.
Il cuore pulsante di entrambe le macchine era diventato una proprietà Commodore: nel 1976 Commodore aveva comprato MOS e cominciato a vendere ai concorrenti il 6502.
Oggi sembrerebbe una mossa economicamente controintuitiva: siamo abituati infatti a computer prodotti con parti reperibili singolarmente sugli scaffali delle grandi catene, e la scelta tra "assemblare" o comprare di marca porta comunque al medesimo risultato (escludendo ovviamente garanzia del produttore, programmi forniti e assistenza).
Ma nell'ecosistema del 1970, e fino all 1980, era molto più conveniente "il fai da te". Se ti servivano processori e integrati te li facevi da te o compravi chi poteva farteli su richiesta, ed era assai più economicamente conveniente che entrare nell'agone del libero mercato (cosa che, abbiamo visto, aveva quasi condannato MOS).
Se ti serviva una carrozzeria per montarci dentro il tuo computer, facevi prima a fabbricartela, motivo per cui il Commodore PET ha un aspetto unico ed iconico e Commodore VIC20, 64 e 16 derivano da stampi identici nella parte superiore e modificati nella parte inferiore (con prese e spinotti), col C64C diverso ma rassomigliante per aspetto al Commodore 128 ed all'Amiga.
Commodore controllava MOS Technology (che dal 1989 infatti smise di marchiare i suoi prodotti MOS per passare al marchio CSG, "Commodore Semiconductor Group") e quindi poteva a. farsi fabbricare tutto quello che serviva, dal SID al PLA fino ad una serie di varianti del 6502 e b. mettere qualche soldo da parte per ogni prodotto venduto dalla concorrenza che avrebbe dovuto obbligatoriamente passare da loro.
Fu questo l'inizio della fama assoluta del 6502.
Cosa rendeva il 6502 ricercato
Senza entrare nei tecnicismi che sarebbero alieni allo scopo di questo articolo, il 6502 era (e vedremo, ancora è) un processore votato ad una fortissima efficienza.
Il suo coetaneo Zilog 80 richiedeva almeno 4 cicli di clock per l'operazione più veloce: al 6502 ne bastava la metà.
A parità di clock il 6502 era estremamente efficiente: come dimostrato da David Murray in un recente video esplicativo, un 6502 portato a 2Mhz (sui computer Commodore era solitamente a 1Mhz, tranne sul Commodore 128 in modalità 128) diventava improvvisamente competitivo rispetto alla concorrenza, e con un costo ridotto e una presenza ubiquitaria sul mercato.
Fu proprio il basso costo, la sua onnipresenza e la presenza di diverse varianti su mercato a rendere la famiglia del 6502 il processore dell'intera terza generazione di console (nonché parte della seconda e della quarta).
Ad esempio l'Atari VCS usava il 6507, una versione "limitata" del 6502 con meno linee di indirizzamento (che quindi non avrebbe mai supportato nativamente i 64kb di memoria centro ad esempio dell'intera ragion d'essere del Commodore 64, ma solo 8Kb (Cyan Engineering, sussidiaria di Atari responsabile per la creazione del VCS, non era disponibile a pagare i 25$ del 6502 "puro" e volle scendere a 12$ al pezzo in tandem col RIOT chip per la gestione della memoria), mentre i suoi successori Atari 5200 e 7800 il "SALLY", una versione del 6502 munita di un pin di "pausa" per consentire ai circuiti video accesso diretto alla memoria (DMA).
Il Commodore più famoso, il Commodore 64 usò invece una versione "estesa" del 6502, il 6510, munito di piedini addizionali legati al controllo della memoria ed al Datassette. Il 6510 fu ricreato in HMOS diventando l'8500, in una versione derivata (7501/8501) per il Plus/4, il C116 e il C16 e una versine a 2Mhz per il Commodore 128.
Un clone non ufficiale, il Ricoh 2A03 finì nel Nintendo NES, modificato per escludere alcuni cruciali brevetti di MOS, mentre il Ricoh 5A22, basato invece sul WDC65C816 (evoluzione ancora esistente del 6502) finì nel cuore del SNES, quindi in piena quarta generazione.
Il 6502 continuò infatti a vivere ben oltre la caduta di CSG: ricorderete tutti il celebre e rompiscatole Furby: era basato sul Sunplus SPC81A, un'altra versione "ridotta" dell'originale 6502.
Se avete in casa una "cornice per foto digitale", probabilmente dentro potrebbe esserci un derivato del 6502, ovviamente in un "pacchetto" più piccino, spesso nascosto da un blob di colla epossidrica nera, un puntino in una scheda madre.
E ad ascoltare Western Design Center, ditta che tutt'ora produce il WDC 65C02 (versione CMOS del primo 6502) ed il WDC 65C816 (con architettura a 16 bit), dentro diverse automobili e dispositivi biomedici attuali (come i Pacemaker) pulsa lo stesso cuore dell'intera informatica anni '80 (se non di buona parte di esso).
Alcune curiosità del 6502
Vi avevamo promesso di non entrare nel tecnico: ci sono diversi siti che potranno darvi i dettagli più avanzati del funzionamento intrinseco dello stesso.
Potremo dedicarci ad alcune interessanti curiosità: ad esempio la presenza di opcode illegali, ovvero 105 istruzioni non documentate dagli effetti più strani scoperte e usate dai programmatori per ottenere diversi effetti altrimenti non ottenibili limitandosi a fare "tutto secondo norma".
Il 6502 è un processore CISC, ma contemporaneamente l'araldo dell'evoluzione che avrebbe portato al paradigma opposto, i processori RISC, tanto da essere definito come "uno dei primi RISC" della storia, ancorché impropriamente, ovvero l'anello di congiunzione tra le due categorie, aprendo quindi la via ai processori ARM usati ad esempio su iPhone e iPad e dal 95% degli smartphone moderni.
Quest'ultimo dato non viene solo confermato da convergenze e parentele evolutive, ma da Sophie Wilson e Steve Furber, gli ingegneri e programmatori "genitori" dell'ARM, che attribuiscono la loro idea proprio ad una fortunata visita alla WDC di Mensch.
Come abbiamo avuto modo di spiegare in passato, molti utenti dell'informatica anni '80 hanno a tutt'oggi più di un 6502 in casa. Non solo perché assai probabilmente hanno comprato in passato un computer ed una console, ma perché lettori floppy come il 1541 del Commodore 64 e il 1571 del 128 erano a loro volta "computer acefali" che comunicavano via seriale col computer a cui erano connessi.
Quindi l'utente medio VIC20/C64/C128 aveva un 6502 nel lettore floppy ed un 6502 o 6510 nel suo computer, entrambi assisi sulla sua scrivania.
Parlando di cloni, vi avevamo detto che uno dei motivi per cui non esistono cloni sovietici del Commodore 64 ma esistono cloni di diversi altri computer fu proprio la barriera posta dall'elevato uso di chip proprietari MOS e CSG.
Eppure esiste un clone sovietico del 6502, il Bulgaro CM603P di Micro Elektronika Bulgaria, perfettamente compatibile con ogni computer che usi il 6502 originale usato nella serie di cloni dell'Apple II noti come Pravetz serie 8.
Come detto a suo tempo però il resto dei prodotti MOS non è mai stato replicato se non in tempi di molto successivi, e lo stesso Occidente non è riuscito a replicare un Commodore 64 creato esclusivamente di nuove parti prima dello scorso anno.
Il 6502 oggi
Abbiamo già accennato alla perdurante esistenza di Western Design Center: secondo una recentissima intervista con Bill Mensch, buona parte degli utenti finali dei prodotti WDC sono hobbisti intenzionati a tenere alta la bandiera dell'era 8bit con prodotti appropriati, bisognosi di parti per costruire il loro computer ad 8 bit oggi.
Aggiungendo le royalty su una lunghissima storia che attraversa l'intera informatica degli ultimi 40 anni, l'uso nella tecnologia ludica, biomedica e nella IoT, WDC vanta ancora adesso "miliardi di unità vendute", poggiate sulle spalle dell'efficienza e della nostalgia (nonché essere stato uno dei più antichi processori ad entrare nel corpo umano, sia pur come mezzo di controllo di un Pacemaker).
Cosa che rende il 6502 lo squalo del mondo dell'informatica di consumo: un organismo che si ritiene non abbia alcun bisogno di evolvere perché perfetto nella nicchia in cui è nato.
Giocare al "gioco del se fosse" non mi è mai piaciuto, e non ritengo abbbia senso: ma posso affermare che il concetto stesso di "computer per le masse e non per le classi", motore della nascita dei computer Commodore e, coi "Primi Grandi Tre" del concetto di informatica domestica non sarebbe stato possibile, e non lo sarebbe stato per diverso tempo, se MOS Technology non avesse innescato una corsa al ribasso dei prezzi rendendo i primi home computer non esattamente economici (il costo dei primi computer era ancora proibitivo per molte famiglie) ma senz'altro accessibile ad una platea più grande di università e centri di ricerca.
Non è un caso aver visto dei 6502 in serie televisive e film come Terminator e Futurama: almeno nel caso della seconda, David X. Cohen, produttore esecutivo e scrittore della serie, ha dichiarato che la presenza del processore MOS/CSG/WDC nel cranio del robot Bender è un omaggio ai suoi anni di programmatore per Apple II, come il mai pubblicato "Zoid" (non a caso, in Futurama compare un alieno di nome Zoidberg, medico goffo e pasticcione, povero ma dal buon cuore) e un linguaggio di programmazione.
Vi abbiamo inoltre spiegato come buona parte dell'avventura di Satoru Iwata, amministratore delegato Nintendo negli anni gloriosi del NES e del GameBoy, sia partita da un PET comprato tra debiti e risparmi da universitario.
Non solo senza il 6502 non sarebbe esistito il suo clone Ricoh usato nel NES, ma probabilmente Satoru Iwata e molte altre promesse dell'era digitale non avrebbero mai potuto permettersi le ben più onerose soluzioni Motorola e il volto dell'informatica stessa oggi sarebbe diverso.