Come dicevo nel post precedente, dopo aver reso inutilizzabile il mio MSX mi trovai senza più un computer da utilizzare. Provai più volte a spegnerlo e riavviarlo ma trattandosi di un problema hardware non c’era alcuna speranza di cavarmela con così poco. Dopo un po’ mi rassegnai al fatto che una cazzata di 3 secondi fatta per pura e semplice curiosità può avere conseguenze durevoli e a volte irreparabili. Mi ripromisi però che un giorno, non importa quanto sarebbe stato lontano, l’avrei in qualche modo aggiustato (o fatto aggiustare). Non provai perciò a smontarlo come il mio istinto mi suggeriva, invece lo misi nella sua scatola, con tutte le sue cose (tranne la cassetta in cui custodivo quei miei primi programmi e che, perciò, andò perduta negli anni), e infine lo imbucai in soffitta in attesa di giorni migliori.

Passavano le settimane e i mesi, non avendo più un computer con cui divertirmi mi dedicai ad altro. Mentre ero in vacanza a Lignano avevo trovato un libro circa degli esperimenti di chimica, con in particolare tutto ciò che serviva per costruire dei piccoli ordigni e così mi ci cimentai. La farmacista era oramai abituata alle mie richieste “particolari” ma quando le chiesi se secondo lei mezzo metro di carta assorbente erano abbastanza per creare una miccia un pochino si preoccupò… comunque mi diede in ogni caso tutto il necessario dicendomi che se un giorno, finita la scuola, avessi voluto, sarei potuto andare ad imparare da loro.

Non mi interessavo però solo di chimica, mi piaceva un po’ tutto ciò che aveva a che fare con la scienza, inclusi pericolosi esperimenti con l’alta tensione (avevo trovato in discarica un trasformatore da 5000V usato per accendere i bruciatori a nafta credo). Fatto sta che non mi successe mai nulla di troppo terribile. A distanza di circa un anno, ero credo oramai in terza media, i miei mi regalarono un corso di operatore/programmatore della Scuola 2F con computer allegato. Era un Frael King con processore NEC V20 (una versione migliorata dell’8088 con supporto alle istruzioni dell’80186)… a confronto dell’MSX il suo BASIC era un po’ una delusione ma di questo parlerò in un post futuro.

L’MSX rimase in soffitta per molti anni. Nel frattempo finii le medie, mi diplomai alle superiori in Elettronica Industriale con l’altisonante qualifica di “Perito Industriale Capotecnico” e incominciai l’università.

Un bel giorno mi decisi ad andare alla ricerca del mio MSX caduto sul campo al fine di tentare una riparazione, lo trovai e cominciai con l’avviarlo.

Schermata di avvio dopo il corto circuito

Schermata di avvio dopo il corto circuito

Sfortunatamente, in tutti quegli anni, l’MSX non si era riparato da solo (la speranza è sempre l’ultima a morire, anche quando è irrazionale) ma presentava gli esatti sintomi di quando, il me stesso ragazzino, l’aveva inscatolato.
Il che, a pensarci bene, dopo così tanti anni di inattività, è fin troppa grazia.

Schermata di avvio di un MSX HB-75P funzionante

Schermata di avvio di un MSX HB-75P funzionante
(OpenMSX)

La schermata di avvio, quella che originalmente mostrava uno sfondo blu con il copyright della Microsoft del 1983, ora era formata da indecifrabili “ammassi” di blocchi bianchi (su sfondo blu, l’unica cosa che, per qualche ragione, funzionava ancora). Il menù principale che compariva dopo pochi secondi era più decifrabile, ma sempre decisamente diverso da quello che doveva essere, con parti della grafica molto rovinate e brutte righe orizzontali che non promettevano nulla di buono.

A prima vista sembrava una gran brutta gatta da pelare. Le cause potevano essere molteplici… e io conoscevo molto poco la struttura di quel computer per poterci mettere mano. Avevo già esperienza con sistemi a microprocessore Z80, ma una cosa era un sistema minimo di quelli studiati a scuola e una cosa diversa era un sistema relativamente complesso come lo standard MSX.

Menù principale dopo il corto circuito

Menù principale dopo il corto circuito

Cominciai perciò a vagare online in cerca di qualsiasi cosa che potesse, in qualche modo, aiutarmi. Con mia sorpresa trovai parecchi siti dedicati all’argomento… non molti in italiano, a dire la verità, ma sembrava proprio che nel resto d’Europa l’MSX avesse “infettato” con il suo fascino parecchie persone. Non ebbi quindi grosse difficoltà a trovare documentazione su praticamente ogni aspetto non solo dello standard MSX, ma persino gli schemi del mio specifico modello con tanto di service manual e technical data book sullo standard MSX.
Menù principale di un MSX HB-75P funzionante

Menù principale di un MSX HB-75P funzionante
(OpenMSX)


Ora finalmente potevo tentare di riparare il mio computer.
Cominciai con il formulare alcune ipotesi… era chiaro che il sistema bene o male funzionava. Si avviava, mostrava il menu, rispondeva agli input da tastiera ed era persino possibile avviare l’MSX-BASIC. Se ci fosse stato un qualche problema con le ROM o la RAM del computer difficilmente il computer sarebbe arrivato così lontano. Tuttavia, visto che non mi costava nulla farlo, scaricai le ROM con un programmatore di EPROM e le confrontai con quelle trovate online. Come sospettavo combaciavano, quindi non era un problema delle ROM.

Cominciai a riflettere sul problema che l’MSX presentava e su come anni fa l’avessi provocato… escludendo RAM, ROM e CPU non restava altro che un problema video. Ora… lo standard MSX 1 prevede l’uso di un chip video TMS9929A (per la versione PAL) con una sua RAM da 16KByte su un bus completamente indipendente, tuttavia, guardando il pinout dello slot che avevo corto-circuitato molti anni addietro non sembrava esserci alcun segnale proveniente da quel bus o dal chip video.

Pinout slot cartucce dello standard MSX

Pinout slot cartucce/espansione dello standard MSX

Cosa poteva quindi essersi rovinato? Un’altra cosa che mi rendeva perplesso era quel costante BEEP nel BASIC ogni volta che cliccavo su RETURN e che se ben capivo indicava che non era solo un problema video, ma il BASIC proprio leggeva dei caratteri sballati sulla sua linea di comando. Non sapendo esattamente come l’MSX-BASIC funzionasse internamente dovetti presumere che le linee di comando che il BASIC interpretava alla pressione del tasto RETURN venissero lette direttamente dalla RAM video. Tutto sembrava indicare un qualche errore o della RAM video o del chip video dell’MSX, tuttavia ancora non era chiaro che collegamento ci fosse con il corto-circuito dello slot di espansione.

Pinout chip DRAM 4116

Pinout chip DRAM 4116

Scaricai quindi il datasheet dei chip della V-RAM (Video RAM) 4116 e con il multimetro testai le tensioni di alimentazione del chip. Questo chip è piuttosto particolare perché per funzionare correttamente ha bisogno di ben tre livelli di tensione distinti: +5V, +12V e -5V. Sia i +5V che i +12V erano presenti… tuttavia, quando andai a misurare i -5V il multimetro indicava una tensione leggermente positiva (+0.1V). I casi a questo punto erano due… o uno o più chip della RAM erano talmente fottuti da creare un corto a massa su quella linea di alimentazione (ma immagino che questo avrebbe provocato anche altri problemi di alimentazione) oppure l’alimentatore aveva qualcosa che non andava. Guardai nuovamente il pinout dello slot di espansione ma, sorprendentemente, i -5V non c’erano. Vidi però che lo slot forniva i -12V, da cui era possibile facilmente ricavare i -5V necessari. Controllai quindi lo schema a mia disposizione ed effettivamente vidi che i -5V necessari alla V-RAM erano ricavati a partire dai -12V. Misurai a quel punto i -12V nello slot di espansione e, come mi aspettavo, non erano presenti. A questo punto era chiaro che avevo cortocircuitato il piedino da -12V dello slot di espansione forse con quello da +12V adiacente creando chissà quale problema nella sezione dell’alimentatore che provvedeva a generare i -12V (e di conseguenza i -5V utilizzati dai chip della V-RAM).

Ponticello creato al posto del dispositivo di protezione del circuito ICP-N15 bruciato

Ponticello creato al posto del dispositivo di protezione del circuito ICP-N15 bruciato

Cominciai a risalire il circuito dell’alimentatore con il multimetro finché non vidi che l’alimentazione si interrompeva in presenza di un piccolo componente color nero, simile ad un transistor ma con due soli piedini che non era nemmeno indicato nello schema. Si trattava evidentemente di un elemento di protezione del circuito dalla forma particolare che scoprii in seguito trattarsi di un ICP-N15. Non avendone uno simile feci un piccolo ponticello per verificare la mia tesi, accesi… e bingo! L’MSX aveva ripreso a funzionare correttamente. È sorprendente come, a volte, un problema apparentemente serio e complesso si risolva con una soluzione così semplice e poco costosa… anche meno costosa della graffetta e dell’elastico che avrebbe certamente usato MacGyver ai suoi tempi d’oro (vedere post precedente per capire il riferimento).

Rivedere il mio primo computer vivo e vegeto dopo così tanto fu davvero bello.

Menù principale ora funzionante

Menù principale dell’MSX riparato

C’erano voluti anni, ma alla fine ero riuscito a mantenere la promessa che avevo fatto a me stesso. Non potevo certo tornare indietro nel tempo per riportare quel computer al me stesso ragazzo, però era come se fossi in qualche modo riuscito ad aiutare un vecchio amico a tornare alla vita.

Il mio interesse per gli MSX non sarebbe finito lì, negli anni avrei frequentato siti, forum e avrei comprato almeno altri due MSX identici al mio più diverse cartucce di giochi ed espansioni che da ragazzino non avevo mai avuto. Anche oggi, a distanza di così tanti anni, rimpiango quei computer ad 8 bit degli anni 80/90, di quanto fosse istruttivo usarli, quanto fosse emozionante impararne il funzionamento e quanto bello fosse aspettare ben 3 minuti affinché Decathlon, il mio unico gioco su audiocassetta, si caricasse (i giochi/programmi avviati da cartuccia ROM partivano immediatamente al boot dell’MSX, ma i giochi/programmi su cassetta richiedevano interi minuti per caricarsi in RAM e, se il volume del lettore non era perfettamente impostato, l’operazione poteva anche fallire obbligandoti a ricaricare tutto da capo). Per certi versi, quella lunga attesa, rendeva in qualche modo il gioco più piacevole e più… reale… se non altro per il fatto che dopo aver atteso tanto non volevi più smettere di giocare per non dover ripetere l’operazione da capo.

ICP-N15, elemento di protezione del circuito distrutto dal mio corto-circuito

ICP-N15 bruciato

Un’ultima considerazione finale. Il piccolo dispositivo di protezione del circuito che bruciai con il mio corto-circuito non è presente in tutte le versioni dell’alimentatore di questo particolare MSX e spesso manca anche lì dove il PCB lo prevede.

In particolare ho individuato almeno due revisioni del PCB dell’alimentatore, una in cui si prevede l’uso di questo elemento, e l’altra, precedente, in cui non c’è. Per qualche motivo il PCB è stato modificato per inserire questo dispositivo in una sorta di ripensamento ma per qualche altra ragione, nonostante il nuovo PCB ne prevedesse l’uso, su alcuni modelli l’ICP-N15 non è presente, sostituito da un ponticello.

PCB con ponticello in cui è previsto l'uso dell'ICP-N15

PCB con ponticello in cui è previsto l’uso dell’ICP-N15

PCB in cui non è previsto l'uso dell'ICP-N15

PCB in cui non è previsto l’uso dell’ICP-N15

Nelle foto qui accanto è possibile vedere i due casi. Nel PCB marcato come 1-613-623-13 l’ICP-N15 è previsto (nella foto è visibile il mio ponticello fra i due piedini al posto dell’N15 bruciato), mentre si vede chiaramente che nel PCB marcato come 1-613-623-11 questo elemento non è affatto previsto, tanto che la traccia del PCB che nell’altra versione è spezzata in due per fare posto al componente in questa revisione invece è un blocco unico.

Appena ne avrò occasione, più per scrupolo che per altro, intendo sostituire il ponticello temporaneo che ho fatto con un vero ICP-N15 di ricambio, ne ho già visti diversi su eBay a pochi centesimi quindi non sarà difficile recuperare un rimpiazzo… dopotutto, se ce l’hanno messo, soprattutto se si sono presi la briga di modificare un PCB perfettamente funzionante e già in produzione, avranno avuto delle buone ragioni… mi chiedo solo, corto-circuito sullo slot di espansione a parte, cos’altro potrebbe provocare un evento simile.

2 thoughts on “MSX, riparazione problema video (scrambled screen)

  1. La stessa cosa succede anche nei VTR VHS fine anni 80.
    Salta il ramo di alimentazione B+ e il VTR è mezzo morto.
    Purtroppo quei IC Protector, si aprono anche per deriva termica.

    Per fortuna quel IC Protector, ha salvato sia il PSU che il microcomputer.

    Complimenti

  2. La stessa cosa succede anche nei VTR VHS fine anni 80.
    Salta il ramo di alimentazione B+ e il VTR è mezzo morto.
    Purtroppo quei IC Protector, si aprono anche per deriva termica.

    Per fortuna quel IC Protector, ha salvato sia il PSU che il microcomputer.

    Complimenti

Leave a Reply

Your email address will not be published.