Negli anni 80 , MB Electronics sviluppa e commercializza la versione futuristica del classico gioco da tavolo Battaglia Navale; il miracolo dell’elettronica mantiene ancora una volta le sue promesse: pulsanti di ogni tipo, suoni elettronici e luci sono il succo di Affonda la Flotta - questo il titolo del gioco scelto dalla MB -.
Sulla confezione più volte è menzionato il termine computer, potente microcomputer, ecc...
cosa da lasciare a bocca aperta un bambinetto come me (all'epoca...sigh...) .
Così oggi, ho deciso di scoperchiare le plastiche e vedere cosa c’è dentro.
Beh, devo dire che ciò che dichiarava MB non era poi così campato per aria; due sono i “chip” interessanti : il TMS1000 e il SN76477
Il TMS1000 prodotto da Texas Instruments a partire dal 1974 è stato il primo microcontrollore immesso sul mercato; a differenza di un microprocessore, un microcontrollore è un vero e proprio microcomputer dotato di CPU, unità logico-aritmetica, memoria ROM e memoria RAM, il tutto progettato e prodotto su un unico dice di silicio.
Il TMS1000 era dotato di 1 KBytes di memoria ROM per ospitare il codice programma e di 64 Bytes di memoria RAM a 4 bit, e per l’interfacciamento con dispositivi esterni era assicurato da 4 ingressi dati, 8 uscite dati utilizzate per la PLA, e 11 uscite utilizzate come control/strobe.
Una nota a parte merita la programmazione di questo dispositivo; una volta progettato e verificato il codice programma che si vuole far svolgere dal TMS1000, tale codice veniva dato alla Texas, la quale provvedeva a “memorizzarlo” sulla ROM. In effetti si tratta di una Mask-ROM , e a differenza delle OTP-ROM e delle moderne Flash-ROM, possono essere programmate solamente in fase di produzione del wafer.
Un risvolto negativo di questo microcontrollore è l’impossibilità di andare a leggere il contenuto della ROM, essendo infatti tutti i principali componenti (CPU, ROM, RAM, ALU,ecc...) contenuti all’interno dell’involucro del chip, ed essendo la ROM programmata in fase di produzione, risulta impossibile accede dall’esterno al bus dati ed indirizzi della ROM al fine di recuperare le informazioni in essa contenute.
Ne è un esempio il videogioco portatile a cartucce Microvision, sviluppato sempre dalla MB nel 1979, dove le cartucce che contengono il programma di gioco utilizzano proprio la ROM del TMS1000 come unità di memorizzazione; il risultato è che il Microvision è una delle poche console per le quali non sono disponibili i dump delle cartucce.
BlockBuster.jpg
Cartuccia del gioco Blockbuster per Microvision
MB non è stata la sola ad utilizzare il TMS1000 in campo ludico, esso era infatti presente in alcuni videogiochi arcade dell’epoca, oltre che in molti altri giochi elettronici da tavolo.
Altro integrato interessante presente in Affonda la Flotta , è il SN76477. Esso è un chip sonoro prodotto sempre dalla Texas verso la fine degli anni 70 , e largamente utilizzato nell’industria dei videogiochi a quei tempi.
Il videogioco più famoso a farne utilizzo è il coin-op Space Invaders - Taito lo utilizzò in quasi tutti i suoi videogiochi di quel periodo - , ma non manca in molti arcade prodotti dalla SNK (in Fantasy, Satan of Saturn), dalla Rock-Ola (in Nibbler), dalla italiana Zaccaria (Laser Battle e Lazarian), fino alla Nintendo (Space Fever), DataEast (Tomahawk 777) e Midway (Space Encounters)
annuncio
Comprimi
Ancora nessun annuncio.
C 6 ? (Tech-Blog)
Comprimi
X
Comprimi
Adesso puoi iniziare a programmare le posizioni delle flotte, inserendo tutte le posizioni occupate da tutte le navi; se ad esempio ha la portaerei posizionata in orizzontale da A1 fino ad A5 , devi inserire le cinque posizioni A1, A2, A3, A4, A5 : posiziona il cursore azzurro sulla lettera A e premilo , poi posiziona il cursore giallo sul numero 1 e premilo , infine premi il pulsante rosso FIRE ; poi sposta il cursore giallo sul numero 2 e premi FIRE , poi sul numero 3 e premi FIRE , numero 4 + FIRE , numero 5 +FIRE ; così hai memorizzato la posizione della portaerei.
Se ad esempio hai il sommergibile posizionato in verticale da B8 fino a D8 , devi inserire le tre posizioni B8, C8, D8 ; sposta il cursore giallo sul numero 8 e premilo, il cursore azzurro sulla lettera B e premila , poi premi FIRE; sposta il cursore sulla lettera C e premilo e poi FIRE , lettera D + FIRE.
Se per errore premi il cursore giallo o azzurro (quindi numero o lettera che sia) su una posizione errata , puoi cancellare quest'ultimo inserimento , andando con il cursore azzurro su CLE e premerlo ; ora inserisci il corretto numero o lettera.
Esegui questa procedura per tutte le navi del giocatore 1 e del giocatore 2 , poi sposta il selettore LOAD/GO su GO , e puoi iniziare la partita. A turno , ciascun giocatore preme il cursore azzurro, poi giallo, poi FIRE per tentare di colpire il bersaglio dell'avversario. Ma questo immagino tu lo sappia....
Spero di essere stato chiaro.
Sai darmi qualche info in più? Non so come alimentarla...
Grazie per tuoi consigli.
post interessantissimo, risveglia ricordi d'infanzia anche a me, ore passate a giocare con gli amici. Purtroppo non possiedo più il gioco, buttato chissà quanto tempo fa.
Innanzitutto complimenti Dr_Who per la perfetta descrizione tecnica dell'architettura del micro TMS1000, in effetti risulta impossibile estrarre i dati presenti in ROM (quindi il programma) con metodi informatici, ma non è impossibile con metodi "estremi" di Reverse Engineering. Per quanto riguarda nello specifico la ROM del gioco di questo post, Electronic Battleship nella versione inglese, è già stato effettuato il dumping della ROM mediante il metodo "distruttivo" del decapping.
Trovate a questo link tutta la documentazione relativa all'azione di Reverse Engineering: https://seanriddle.com/tms1000.html
Da qui possono nascere vari spunti per una analisi più approfondita:
- Possibilità di decompilazione del codice binario per risalire al codice sorgente
- Emulazione del microprocessore TMS1000 (già esistente)
- Riparazione di schede non funzionanti con la sostituzione di nuovo hardware con processori moderni ATMega328 ad esempio.
Come ultima cosa vorrei chiedere a Dr_Who o a chi possiede il gioco se è possibile avere immagini con la maggior risoluzione possibile della scheda PCB nella parte inferiore e superiore, grazie.