User Tools

Site Tools


content:retrocomputing:riparazioni

Table of Contents

Riparazioni

Intro

Di seguito una serie di indicazioni per il troubleshooting di base e un elenco di riparazioni di hardware, computer e periferiche, soprattutto Commodore.

Test/attività di base

Ispezione visiva

E' importante ispezionare entrambi i lati della scheda sotto esame alla ricerca di:

  • saldature non di fabbrica
  • eventuali ponticelli fatti con cavi di rame
  • chip sostituiti
  • mod tipo doppio Kernal o reset esterno

Questi stanno ad indicare riparazioni/manomissioni della scheda, che a volte possono essere la causa dei malfunzionamenti della stessa. Verificare quindi la zona dell'intervento, identificare chip e componenti coinvolti e anticipare eventuali problemi che potrebbero quindi intervenire sul computer una volta acceso.

Postazione di test

La postazione di test deve essere sicuramente funzionante, in particolar modo:

  • l'alimentatore
  • l'uscita video
Prima di collegare il computer da testare, è fondamentale verificare la postazione di test (alimentazione e video) con un computer sicuramente funzionante (muletto), così da escludere problemi nel resto della catena del segnale

Schemi

Di seguito alcuni link a schemi di schede Commodore.

C64

Per il C64 uno specchietto che dovrebbe fare chiarezza:

AssyRevSchematic
250407A251138 1/2 251138 2/2
250425B251469 1/2 251469 2/2
250466B-3252278 1/2 252278 2/2
250469E252312 1/2 252312 2/2

VIC 20

ffff:

AssyRevSchematic
324001-03-1/3 2/3 3/3

Tensioni

La prima cosa da testare in un computer, funzionante o no, sono le tensioni.

Alimentatore VIC20 CR / C64

Si può pensare di utilizzare gli alimentatori originali Commodore, al patto prima di testarne le tensioni. Di seguito un pinout delle tensioni presenti sullo spinotto dell'alimentatore:

Le tensioni da considerare valide sono:

  • DC: 4,9-5,25 V
  • AC: max 10,5V :?:

Se così non è, è meglio considerare il PSU non funzionante, pena danni irreversibili al computer.

Scheda C64

Sulla scheda del C64 sono presenti le seguenti tensioni:

  • 5V out del pulsante di accensione vanno alla parte logica (sinistra) della scheda, dove sono presenti i chip. Vcc dei chip sono alimentati da questa tensione
  • i regolatori di tensione VR7805 e 7812 prendono tensione da un ponte raddrizzatore che regola la tensione 9V AC e forniscono tensione al VIC-II e al SID. Qui di seguito viene spiegato meglio:
TensioneDa In uso a
12V 7812VIC-II e SID
5V 7805VIC-II
5V switchchip logici

Scheda VIC20

Di seguito uno schema della parte di alimentazione del VIC20:

Il VIC20 funziona quasi esclusivamente con la sola tensione 5VDC dell'alimentatore.

Il ramo a 9VAC:

  • arriva sulla User Port direttamente in 9VAC, tramite il caratteristico doppino nero che attraversa tutta la parte superiore della scheda del VIC 20
  • serve a generare, dopo il fusibile, ponte a diodi e condensatori, la +9V che alimenta il motore del Datassette
In sostanza, nel VIC20 tutto il ramo a 9VAC serve solo ad alimentare la User Port e il Datassette. :!: Può anche saltare il fusibile ed avere comunque un computer funzionante, a parte il lettore a cassette (e la user port)

Misurazione

Si possono misurare i 9V AC e i 5V DC, provenienti dall'alimentatore, sulla user port, usando i puntali del tester a cavallo delle due fessure:

Se il valore dei 5V DC è molto più basso (ad es. 4-4,1-4,2 V) può essere indicativo di un componente in corto.

Lo stato di on/off del pulsante di accensione del Commodore è configurato così:

In particolare, con vista dal retro della scheda, si possono testare i pin e misurare le tensioni prendendo questi riferimenti:

Per misurare le tensioni sui pin:

  • 5V DC: misurare tra un pin a 5V e uno GND
  • 9V AC: misurare tra i due pin 9V AC

Temperatura componenti (termocamera)

Semplicemente con una mano oppure con l'ausilio di una termocamera, misurare la temperatura dei componenti. Di seguito alcune foto di un C64 biscottone, prese con una termocamera FLIR one:

Da quanto sopra si può stilare una tabella dei chip più caldi; dopo 5 minuti dall'accensione del computer (valori in °C - attendendo di piú i valori non si discostano):

Chip C64 (250407 e 245)C64C (250469)
6510 (CPU) 61 -
906114 (PLA) 57 -
6526 (CIA1 e 2) 47-53 37
921225 (Char ROM) 49-55 45
921226 (Basic ROM) 42-56 -
921227 (Kernal ROM) 60 -
6569 (VIC-II) 68-75 -
6581 (SID) 71 -
251913 (Basic+Kernal ROM) - 41
8500 (CPU) - 53
SuperPLA - 30
8565 (VIC-II) - 53
8580 (SID) - 50
RAM 37-45 39
TTL logic 37 37
A volte il problema non è dovuto ai chip troppo caldi (in cortocircuito), ma a quelli freddi (morti)

Dead test cartridge

In presenza di uno schermo nero, conviene utilizzare la Dead Test cartridge (anche su Kung Fu Flash :?:) togliendo tutti i componenti non strettamente necessari, se sono zoccolati, come spiegato in questo video. La Dead test cartridge si usa in presenza di una schermata nera; tipicamente viene usata la 781220 che testa un insieme limitato di chip e non si usa il kit di harness per testare le porte. La Diag Test cartridge 586220 va invece usata dopo, a fine riparazione, per testare tutti i componenti.

I chip che si possono togliere per avere comunque un sistema C64 minimale ma funzionante con la Dead Test sono:

  • SID
  • 2x CIA (6526)
  • 3x ROM (901225, 901226, 901227)

Dopo qualche secondo di schermo nero, anche con i componenti sopra rimossi, al termine dei test si ottiene questa schermata:

Se invece i componenti non sono zoccolati, conviene testare i segnali con il tester/oscilloscopio.

Lampeggii

La Dead test può produrre dei lampeggii che stanno ad indicare solitamente:

  • problemi ad uno o più chip RAM
  • problemi al data bit corrispondente, come da indicazioni in questa riparazione

In quest'ultimo caso, il 'colpevole' può non essere il chip RAM indicato nello schema, ma uno qualsiasi dei chip che utilizza il data bus, quindi purtroppo quasi tutti… In questo caso bisogna rimuovere tutti i chip principali, non necessari al boot.

Un'alternativa a rimuovere tutti i chip non necessari, può essere quella di dissaldare da essi solo il pin data bit che viene indicato dai lampeggii.

Jupiter Lander

Con la cartuccia di Jupiter Lander si puo far partire un sistema minimale, simile alla Dead Test, ma interattivo nel quale si riesce anche a provare la tastiera, anche in condizioni di un suo non perfetto funzionamento di tutti i tasti e il joystick. E' quindi possibile rimuovere i seguenti componenti:

  • SID
  • CIA2 (6526) - lasciare CIA1 per la tastiera
  • 3x ROM (901225, 901226, 901227)

Pulizia

A volte la semplice azione di rimozione/inserimento chip, previa pulizia, può fare partire i computer.

Alcol

Togliere/rimettere i chip, dopo aver pulito con alcol isopropilico (IPA) chip e contatti zoccoli.

Pulire anche i contatti dei pettini porta datassette e user port con IPA e cotton fiocc.

Un video con indicazioni di pulizia approfondite si trova qui.

Scheda

La scheda, se molto sporca, si può pulire su di un lavello con:

  • abbondante acqua ragia e acqua corrente calda
  • poi sapone e acqua corrente calda
  • asciugare rapidamente con aria compressa

Il tutto come spiegato qui.

Test preliminari

Di seguito una serie di test da eseguire sempre per diagnosticare un problema su di un Commodore.

  • misurare le tensioni:
    • 9 VAC e 5 VDC sul connettore User Port
    • 12 e 5 VDC sul pin di destra dei regolatori 7802 e 7805
  • con l'oscilloscopio testare:
    • U7 CPU:
      • pin 1 e 39 (clock-in da VICII e clock-out): 984 KHz per PAL
      • pin 40 (reset): spegnere e accendere computer; il segnale deve stare a 0 per 1 secondo e poi alto a 5 V dopo
        • se il test pin 40 reset CPU non va, verificare U20 556 (di fianco alle RAM); vedi qui
      • pin 7-23 (address bus): tutti i pin devono mostrare attività, con onda quadra variabile e ampiezza circa 5 Vpp
      • pin 30-37 (data bus): come address bus
    • se il clock sulla CPU non va, testare U19 VIC-II:
      • pin 21 (Clock Color): 17.73 MHz (PAL clock)
      • pin 22 (Clock In): 7.47 MHz
    • se il clock sul VIC non va, testare U31 8701 (per una board 250425):
      • pin 13 (Clock In): valore 17.73 MHz (PAL clock)
    • se il VIC-II va, ma non c'è segnale video, verificare connettore video CN5, con cavo con spinotto a 8 pin
      • pin 4 (Composite): 1.2 V
      • pin 1 (Luminance): 1.4 V
      • pin 6 (Color/Chrominance): 1.08 V

Sintomi 'classici'

Di seguito alcuni sintomi 'classici' dove il componente colpevole può essere facilmente individuato.

C64

  • compare un garbage screen → Character ROM (901225)

  • lo schermo centrale si presenta vuoto → Basic ROM (901226)

  • schermo iniziale con colori errati e 'sfarfallanti' → Color SRAM (U6 - 2114):

  • schermo nero:
    • Kernal ROM (901227)
    • PLA
    • … un sacco di altri componenti
  • per questi ed altri sintomi cercare nella Pictorial Guide

Diag Test

La Diag test cartridge va usata dopo aver effettuato la riparazione, per testare il funzionamento di tutte le porte e componenti. E` quindi necessario l'uso di un harness kit, con terminatori per ogni porta. Tipicamente viene usata la 586220; può essere caricata anche da Kung Fu Flash:

Nell'immagine sopra ho collegato una tastiera; se uso quella invece del terminatore del kit, ottengo la segnalazione di 'OPEN':

Questa invece la schermata corretta per tutti i chip e porte collegando tutti i terminatori (quello della tastiera compreso):

Un SID di quelli moderni (X-SID) darà errore per sé (6581) e per la Control Port, in quanto non supporta i convertitori analogici per i paddle

Tastiera non risponde bene

Una tastiera sporca può comportare che alcuni tasti non funzionino bene oppure è richiesto premerli con forza. In questo caso è necessario smontare e pulire i tasti così:

  • svitare viti tastiera
  • togliere i tasti ad uno ad uno sollevandoli con il manico di uno spazzolino da denti
  • svitare le vitine del PCB, dissaldare il caps-lock e pulire il PCB con WD-40
  • togliere i perni neri dei tasti
  • pulire tasti e perni con acqua e sapone e spazzolino
  • asciugare e rimontare tasti
  • prima di rimontare il PCB si può pulire il retro in gomma conduttiva dei perni come di seguito:
    • prendere una matita grossa e farle la punta con temperino
    • strofinare la punta con una limetta unghie monouso e raccogliere la grafite in un contenitore
    • intingere la punta di un cottonfioc prima in alcol isopropilico, poi nella polvere di grafite
    • spennellare tutti i gommini conduttivi
  • la barra spaziatrice si monta così:

Molle

Per pulire le molle della tastiera immergerle in una soluzione di aceto di alcol e Coca Cola per 1 ora

Retrobright (o Retr0bright)

Case

  • Innanzitutto è importante pulire con detergente e sapone liquido il case, onde evitare il formarsi di macchie poi con il redrobright.
  • Poi coprire con nastro carta le etichette 'Commodore' e 'Power'

Per i case dei VIC 20, C64C, C64G, C128… uso perossido di idrogeno, detto 'acqua ossigenata' (H2O2), nella versione in crema a 40 volumi, corrispondenti al 12% di concentrazione (vedi qui), spalmata direttamente sul case con un pennello, proteggendo sempre le mani con guanti in gomma e lasciando al sole qualche ora, max una giornata.

Riapplico ogni ora circa e oriento con la stessa frequenza il case per esporne altre parti e seguire il sole.

Metodo EMD69

Sempre per il case, è possibile usare un metodo alternativo, che promette risultati migliori. Viene descritto in questo video di EMD69 e prevede:

  • all'interno di una bacinella, creare una soluzione composta da:
    • 200 ml della stessa crema vol.40 di cui sopra
    • poca acqua calda
    • 2 misurini di Vanish Oxi Action
  • dopo aver ben mescolato la soluzione:
    • applicarla tutta con un pennello e guanti protettivi
    • avvolgere il case con cellophane
    • lasciare al sole per molte ore (anche 6-8 ore)

Tasti

  • tasti del C64C, C128, C64G:
    • predisporre un cartone
    • posizionare i tasti sul cartone
    • tralasciare i tasti funzione e rimuovere i 2 perni di plastica sotto la barra spaziatrice
    • con un pennellino spennellare i tasti con crema vol.40, aiutandosi con i guanti
    • coprirli col cellophane
    • mettere al sole per 6-8 ore

  • tasti del Plus/4 o 128: attenzione che i PETSCII si cancellano lasciandoli al sole come sopra :!: Lasciarli al massimo 2-3 ore

VIC II

Il pin 15 del VIC II (Sync / Lumimance) all'oscilloscopio compare così:

  • con colore uniforme azzurro chiaro (attivato RVS ON e digitato spazio per tutta la superficie video):

L'immagine, presente tra i due picchi negativi, da sinistra a destra, viene continuamente refreshata e l'uniformità dei colori nel tempo è data dalla linea retta superiore.

  • durante un videogioco:

Qui invece i colori cambiano di continuo e quindi in output compaiono righe verticali che cambiano di continuo.

TL866II-Plus

Il TL866II-Plus consente di programmare EPROM e verificare vari chip. Per l'installazione sotto Linux vedi qui.

Load

Le ROM per i vari Commodore possono essere scaricate da qua.

Per caricare le ROM in formato .bin nel programmatore fare:

Programmazione

Una volta ottenuta la ROM .bin si può programmare la EPROM, che in precedenza deve essere stata cancellata con il dispositivo apposito:

  • inserire una EPROM di valore adeguato nel programmatore TL866II-Plus. Le 2764 sono da 64 bit, quindi contengono esattamente 8 KB:

Nel caso in cui si abbiano delle 27128 è necessario 'riempirle' in modo che non siano vuote a metà: da Linux si può fare così:

cat kernal.901227-03.bin kernal.901227-03.bin > kernal.901227-03-copy.bin

$ ll -h

-rw-rw-r-- 1 roberto roberto 8,0K ago  6 14:56 kernal.901227-03.bin
-rw-rw-r-- 1 roberto roberto  16K ago  6 15:13 kernal.901227-03-copy.bin

In pratica, il file kernal.901227-03.bin da 8K è stato concatenato a sé stesso per diventare da 16K, adatto ad una EPROM da 128 bit.

  • eseguire il programma Xgpro, selezionare il tipo di EPROM :

Adattatore

Questa EPROM 2764 dovrà essere inserita nel computer Commodore con un adattatore 2364, come questo:

Fare attenzione alle serigrafie con 'Top' e 'Bottom', dove è anche indicato la posizione in cui mettere le resistenze da 10K in funzione della dimensione della EPROM

Lo schema dell'adattatore è il seguente, credo tratto dal blog di World of Jani:

E' anche possibile modificare i file .bin nel programmatore, prima di flashare le EPROM, in modo da ottenere una ROM custom con, ad es., un testo personalizzato:

Leggere e Verificare ROM 2364

E' possibile costruire un adattatore al contrario, rispetto a quello indicato sopra, con lo zoccolo per le 2364 in alto e i pin per le 2764 in basso, come questo:

In questo modo si possono leggere (con READ) le ROM dei Commodore oppure effettuare prima un Load di un .bin di una ROM e poi un Verify della correttezza della stessa:

Logic Test

PLA

E' possibile fare anche un test logico delle C64 PLA, scaricando il template file da qui e poi:

Il chip PLA può essere quindi testato:

Se dà All Vector Testing Normal la PLA dovrebbe funzionare correttamente.

Bad PLA

Di seguito invece l'esito per una PLA non funzionante:

Quella sopra fallisce per varie linee KO. Invece quest'altra ha un probabile cortocircuito interno:

Altri chip logici

Il programmatore può eseguire test anche di altri chip logici; bisogna prestare attenzione alla versione dell'integrato, in quanto per lo stesso ce ne possono essere due o più.

Per testare chip come ad es. il 74LS14, scrivere solo '7414'

In alternativa è possibile premere direttamente 'Autofind'; se il chip è nell'elenco del programmatore e se è funzionante, sarà elencato:

Qui sopra un chip 4066 è stato identificato, quindi presumibilmente è buono.

Riferimenti

Video di RetroChannel in cui spiega il logic test delle PLA e come leggere le ROM 2364 con un adattatore.

Pagina web con indicazioni più per Windows disponibile qui qui.

C64

Sintomo

Sintomo: schermo nero

Analisi

  • sostituito vari chip zoccolati con altri di altra scheda, senza esito
  • in particolare verificato che sostituendo la PLA ho ottenuto a video colori vari o righe colorate, alternate a schermi neri. Ciò è sintomo di una PLA difettosa (due, in questo caso…)

Riparazione

Soluzione: sostituito PLA con chip di nuovo tipo

C64 #2

Sintomo

Sintomo: bordo di colore ok, ma sfondo con blocchi strani o linee (garbage screen)

Analisi

  • toccando la ROM caratteri 901225-01 compaiono a video schermo blu o caratteri strani che scrollano verso il basso; rimosso e pulito contatti e piedini senza successo
  • Dead Test 781220 viene portato a termine
  • cartridge Jupiter Lander funziona (bypassa le ROM)
  • sostituito 2x multiplexor RAM 74LS257, senza successo

Riparazione

  • rimosso zoccolo della ROM caratteri e messo strisce prese da Amazon: il garbage screen è sparito e si vede bordi ok e sfondo vuoto :!:
  • presa ROM Basic da altro C64: funziona!
Soluzione: sostituito zoccolo della ROM caratteri; sostituito ROM Basic, che è risultata comunque poi funzionante. Probabilmente l'inserimento di quest'ultimo non era adeguato.

C64 #3

Sintomo

Sintomo: schermo nero con assenza di segnale video

Analisi

  • l'alimentazione 5V DC agli integrati logici della parte sx della scheda arriva correttamente
  • non c'è ingresso né uscita delle tensioni verso/da i regolatori di tensione 7805 e 7812
  • testato fusibile: ok

Schema

Controllato lo schema della board assy 250425 (apparentemente è quello corretto anche se viene segnalato come 251469). Di seguito uno zoom dell'alimentazione:

  • testato alimentazioni come spiegato sopra. In realtà dopo una serie di accensioni/spegnimenti ha buttato fuori le tensioni corrette e, da misurazioni precedenti, apparentemente il pulsante non attivava il ramo di tensione a 9V AC. Deciso quindi di sostituire il pulsante di accensione.

Riparazione

Soluzione: riparato pulsante di accensione.

In altri casi simili, con assenza totale video, conviene testare o sostituire il generatore di clock 8701 del VIC II

VIC20

Sintomo

Si accende con regolari sfondo bianco e bordo celeste, ma nessun carattere a video

Analisi

Di seguito i test effettuati.

Cartucce gioco

Inserito un paio di cartucce gioco, ma i giochi non si avviano. Questo a differenza di quello che succederebbe sul C64, dove le cartucce bypassano eventuali problemi ad alcuni chip (non tutti) che impediscono l'avvio normale.

ROM Basic

Guardando un video su YouTube viene segnalato che il sintomo lamentato è causato dalla ROM Basic. Si rende quindi necessario:

  1. dissaldare ROM
  2. usare zoccolo ad hoc 2364 (tipo vecchio) per EPROM 2764
  3. programmare EPROM

come spiegato qui.

Riparazione

Dissaldatura

Per dissaldare chip conviene:

  1. settare la temperatura della stazione dissaldante a 350 C
  2. appoggiare verticalmente la punta sulla piazzola
    1. attendere 2 secondi che lo stagno si sciolga (roteando la punta, si dovrebbe sentire il piedino che si muove)
    2. premere il pulsante per succhiare lo stagno
      1. l'aria dovrebbe fluire dentro la piazzola ormai libera di stagno e si sente anche come rumore, di aria libera, non 'soffocata'
  3. in caso di mancata dissaldatura (potrebbe essere una piazzola di massa, con molto metallo) aggiungere stagno nuovo al vecchio, prima di dissaldare nuovamente (punto 2.)
  4. ispezionare visivamente la dissaldatura: dovrebbe notarsi il foro libero di stagno intorno al piedino del chip, che dovrebbe muoversi liberamente dentro la piazzola
  5. in casi difficili usare stazione saldante ad aria (per SMD) dall'altro lato e tirare gentilmente con una pinzetta
  6. pulire poi sempre le piazzole dallo stagno residuo aspirandolo con la dissaldatrice e anche l'eventuale stagno presente sui pin dei chip, qualora siano funzionanti e si voglia riutilizzarli
Soluzione: sostituzione ROM Basic con EPROM programmata

VIC20 #2

Sintomo

Si accende con video assente e righe diagonali che scorrono

Analisi

Testato tensioni e segnali dei vari integrati; non sono stati rilevate anomalie.

Riparazione

Recuperato VIC chip 6561 zoccolato da altro VIC 20 funzionante.

  • installato 6561 sul VIC 20 che presentava il difetto: ha funzionato
  • installato il presunto VIC chip 6561 sul VIC 20 che prima funzionava: non ha funzionato
  • alcuni tasti non rispondevano bene; pulito contatti in gomma dei tasti, come spiegato sopra
Soluzione: sostituito VIC chip 6561 e pulito contatti in gomma tasti

VC1541 bianco

Funzionamento normale

Di seguito viene descritto il funzionamento normale, al fine di verificare scostamenti da questa baseline.

Avvio corretto:

  • LED verde acceso
  • LED rosso acceso e motore che gira, entrambi per 1-2 secondi
  • accendendo il computer si ha ancora per un attimo LED rosso e motore
  • dare il seguente comando:
LOAD "*",8
  • compare “SEARCHING FOR *” e subito dopo “LOADING”. Il motore lavora.
  • una volta terminato il caricamento comparirà “READY.”. Il motore si arresta.
  • si potrà quindi dare i comandi LIST e RUN
  • il motore del floppy lavorerà ancora e infine il programma si avvierà

Sintomo

Sintomo: il drive resta su “SEARCHING FOR”

Il problema, come sopra, è che non legge nessun floppy. Di seguito i test effettuati,

Analisi

Misurato tensioni 5V e 12V

Le tensioni 5V e 12V si possono misurare su CR1 e CR2. La prima serve ai chip, la seconda per far funzionare i motori (quello che fa girare i floppy è il servo :?: che muove la testina in avanti e indietro). Tensioni ok

Cavo seriale

Per verificare che il cavo seriale funzioni, si può:

  • testare i pin per continuità ai due capi
  • col drive spento, dando il comando LOAD“*”,8 compare l'errore “?DEVICE NOT PRESENT”, che avvisa che non trova il drive. Invece col drive acceso riconosce il device, ma presenta l'errore “SEARCHING FOR *”. Ciò significa che il cavo seriale è funzionante.

Oscilloscopio

Si può collegare la clip nera (negativo) della sonda dell'oscilloscopio alla vite del VR2 oppure al negativo dei condensatori elettrolitici
  • 6502: OK. Linee dati ed indirizzi mostrano attività (bit 1 e 0 in movimento)
  • 2×6522: OK. Linee dati ed indirizzi mostrano attività
  • ROM 901229-05: OK. I pin mostrano attività
  • ROM 325302-01: OK. I pin mostrano attività
  • 74LS14 (inverter): dal datasheet alcuni pin (11 e 13) non presentano il segnale invertito rispetto ai corrispondenti pin (10 e 12). In particolare presentano un segnale a 3V :!: invece che a 5V.
  • 7406 (altro inverter): pin 6 a 3V :!:

Cambio chip

  • provato a sostituire le VIA 6522 con altre di altro drive, ma i pin del 74LS14 e 7406 (vedi sopra) restano a 3V. D'altro canto le 6522, dai test eseguiti in precedenza con l'oscilloscopio, risultavano a posto.

Riparazione

Da indicazioni di Ray Charlsen e dai test effettuati sopra, i possibili colpevoli sono il 74LS14 e 7406. Dopo aver ordinato i chip e atteso la consegna:

  • sostituito il solo 74LS14: i pin che prima segnavano 3V anche sul 7406 adesso presentano valori normali a 5V o 0V :!:
  • inserito un floppy: adesso, dopo LOAD“*”,8, compare LOADING e quindi READY. LIST e RUN funzionano correttamente,
Soluzione: Il problema era quindi il 74LS14, che è stato sostituito,

1541 marrone

Sintomo

Sintomo: LED verde OK, ma LED rosso e il motore restano accesi continuamente

Analisi

  • tensioni 5V e 12V OK
  • oscilloscopio:
    • 6502: linee indirizzi (A) e dati (D) ferme su 0V o 5V, non hanno attività :!:

Riparazione

  • Preso a prestito CPU 6502 da VC1541.
    • adesso il LED rosso e il motore non sono continuamente accesi :!:
    • c'è attività sui pin A e D del 6502
    • caricamento programmi da floppy ok
Soluzione: sostituito il 6502. Confermato anche dal fatto che, messa questa CPU al posto di quella del VC1541, il drive presenta gli stessi sintomi.

1541 ?FILE NOT FOUND ERROR

Sintomo

Se, caricando un disco compare '?FILE NOT FOUND ERROR' è probabile che si sia depositata polvere sulla testina.

Utilizzare sempre un floppy sicuramente funzionante, come ad esempio il seguente:

Riparazione

Pulizia testina

Pulire la testina con cotton fiocc e alcol isopropilico; pulire allo stesso modo anche la plastica sopra, che, in assenza di disco, va a contatto con la testina e la può sporcare.

Se dà ancora FILE NOT FOUND, pulire nuovamente con IPA, sopra e sotto

I caricamenti dovrebbero procedere correttamente (sistemato così tre drive che presentavano lo stesso sintomo).

1541-II

Funzionamento normale

A differenza di un normale 1541, in un 1541-II l'avvio corretto è:

  • LED rosso ('Power') acceso
  • LED verde ('Drive') acceso e motore che gira, entrambi per 1-2 secondi

Sintomo

Sintomo: LED rosso OK, ma LED verde e il motore restano accesi continuamente.

Analisi

  • tensioni 5V e 12V sembrano OK
  • rimosso il blocco meccanico con il motore e la testina: il LED verde si spegne
  • testato l'“error channel”; il seguente test consente di testare il corretto funzionamento dell'elettronica:
10 OPEN 15,8,15 
20 INPUT#15,E,E$,T,S 
30 PRINT E;E$;T;S 
40 CLOSE 15 

Il comando OPEN presenta i seguenti parametri:

OPEN,file#,device#,channel#

Nell'esempio sopra:

  • '15': può essere un qualsiasi numero fino a 127; corrisponde al file# e ad esso si farà riferimento nel resto dei comandi
  • '8': è il device# floppy drive (solitamente 8)
  • '15': è il command channel#; i canali 2 e 14 possono essere invece usati per i data channel

Il comando INPUT# legge dati da una periferica; è necessario che prima sia aperto un canale con OPEN.

I comandi disco devono essere dati all'interno di un programma, non standalone, pena comparsa dell'errore '?ILLEGAL DIRECT ERROR'

Se si ottiene quanto segue l'elettronica è a posto:

RUN

73 CBM DOS V2.6 1541 0 0

In pratica, il comando interroga il drive e ottiene dei valori, con i seguenti significati:

EE$TS
Errore numerico (“73”)Errore testo (“CBM DOS V2.6 1541”)Track (“0”)Sector/Block (“0”)
  • un errore “0” significa 'nessun errore'
  • un READ ERROR su Track 18 Block 0 significa che il floppy non è mai stato formattato

Il manuale del drive 1541 è reperibile qui.

Riparazione

  • arrivato altro 1541-II funzionante
    • il vecchio 1541-II con il nuovo alimentatore funziona correttamente
  • ritestato vecchio alimentatore: ottenuto valori 5V e 16V, invece di 12V, quindi i 16V non consentivano di far funzionare correttamente motore e parte meccanica
  • caricamento programmi da floppy ok
Soluzione: problema con l'alimentatore che buttava fuori 16V, invece di 12V.

1541 ?FILE NOT FOUND ERROR #2 (FAIL)

Sintomo

Sintomo: avvio drive corretto, ma '?FILE NOT FOUND ERROR' caricando un disco, anche dopo aver pulito la testina con IPA

Fondamentale usare un floppy sicuramente funzionante, come indicato qui.

Analisi

Error Channel

Per prima cosa conviene testare l'error channel

1541 Diagnostic Cartridge

Poi si può eseguire, anche da Kung Fu Flash, la 1541 Diagnostic Cartridge. Per una spiegazione dei vari test si può fare riferimento qui.

Resistenza testina

Poi si può testare i valori di resistenza tra i pin del connettore testina:

Un esempio di valori corretti letti da un drive funzionante:

Pin-to-pinOhm
1-212.6
1-313.0
1-524.4
2-314.6
3-526.1
2-513.0
I valori corretti sono tra i 10 e i 30 Ohm; nel caso in cui si leggano valori di KOhm la testina è danneggiata e non è riparabile

In questo caso sono presenti 14 KOhm tra i pin 1 e 5 della testina; la meccanica è quindi non funzionante. Con questo tipo di drive è una situazione comune; si tratta dei drive con leva laterale esterna (non centrale) e meccanica Mitsumi-Newtronics:

Riferimenti

Si può sempre fare riferimento alla 1541 Maintenance Guide, dove a pag- 3-8, vengono elencati i range di resistenza possibili per il connettore testina:

Soluzione (FAIL): purtroppo in questo caso la testina è danneggiata; la parte elettronica si può riutilizzare

Plus/4

Sintomo

Sintomo: schermo nero, ma segnale video presente

Architettura

Visto che è la prima volta che mi capita questo computer da riparare, ho raccolto alcune informazioni circa l'architettura dello stesso.

ChipDescrizioneNote
8501R1CPUClock variabile a 1,776 Mhz e 0,89 Mhz, uguale al C16
8360R2TEDChip grafico e sonoro, uguale al C16
318006-01BASIC ROMUguale al C16
318004-04KERNAL, character set ROMUguale al C16
251641-02PLAUguale al C16
317053-01 e 317054-013-Plus-1 ROM
4264-15RAM
74LS257Multiplexer RAM

Analisi

8501R1

Mi sono concentrato sulla CPU 8501R1.

  • Misurato tensioni sui PIN del 8501:
PinDescrizioneValore misuratoNote
1Clock1,773 Mhz e 0,89 Mhzok
14-19 e 21-22A8-A13 e A14,A15:!: Segnale 'sporco' intorno i 5 V
23-30P0-P6alcuni segnali 'sporchi' intorno i 5 V
31-38D7-D0Attività regolare

Il test evidenziato mostra valori errati su vari PIN del bus indirizzi.

Misurazioni su di un 8501 correttamente funzionante:
PinDescrizioneSegnale normale
6-19A0-A13Attività normale
21-22A14-A15Attività normale
31-38D7-D0Attività normale
24-25P6-P55 V
26-30P4-P00, 3, 0, 0, 0 V
  • sostituito 8501R1 con equivalente preso da C16 funzionante: lo sfondo nero è scomparso, ma è comparso il bordo viola e sfondo bianco corretto, ma con caratteri vari (garbage screen):

  • a seguito della sostituzione CPU, tutti i PIN A0-A15 hanno mostrato un'attività regolare
  • testato CPU, apparentemente non funzionante, del Plus/4 su C16: è comparso schermo nero, a riprova che l'8501 del Plus/4 era difettoso

Garbage screen

Ho cercato quindi di risolvere il problema del garbage screen.

8360R2
  • sostituito TED con equivalente da C16: sempre garbage screen
318006-01
  • sostituito BASIC ROM con equivalente da C16: sempre garbage screen
318004-04
  • sostituito KERNAL,Char set ROM con equivalente da C16: sempre garbage screen
3251641-02
  • sostituito PLA con equivalente da C16: sempre garbage screen
Riassunto: testato TED, 2xROM e PLA su C16 - funzionano
317053-01 e 317054-01
  • rimosso 3-Plus-1 ROM: stesso sintomo
4264-15
  • controllato attività su chip RAM agli indirizzi A*: sembra ok
74LS257
  • controllato attività su chip multiplexer per RAM: sembra ok, ma da verificare meglio :?:
Cartridge
  • testato cartuccia Jack-Attack: stesso sintomo

Diag264

Ordinato cartuccia Diag264. Una volta arrivata settata così:

Low RAM test
  • all'accensione vedo 6 lampeggi e compare il seguente pattern:

  • e subito dopo questo altro:

La documentazione rivela particolari interessanti. In particolare, durante il low RAM test, in presenza di un problema:

  1. il bordo flasha da 1 a 8 volte, indicando la data line guasta :?:
  2. i pattern devono essere uniformi; se compaiono altre lettere al posto di '@' il problema risiede nel banco RAM secondo questa tabella (estratto della doc):

Compaiono una serie di 'D', quindi il problema risiede nel banco RAM U13.

  • dissaldato RAM U13. Al posto delle RAM 4264 usato chip equivalenti 8264.

Al boot la situazione è migliorata, ma ci sono ancora dei caratteri spuri:

  • testato con la Diag264: questa volta non compaiono caratteri diversi da '@', però flasha 7 volte
Se compaiono solo i pattern e i flash, ciclicamente, allora c'è un problema. Un diag normale prevede anche i check mostrati più avanti
  • provato a fare piggybacking sui rimanenti banchi di memoria RAM, fino a che, provando il chip U16 la situazione è migliorata, anche se c'è un lampeggio in corrispondenza del '.' di 'READY.':

  • effettuato altro piggybacking sul chip U17: il boot adesso è regolare :!:
Altri test
  • inserito Diag264: adesso i check non presentano più lampeggi nè caratteri strani e proseguono:

Riparazione

Il flat della tastiera può essere rimosso tirando. I pin di metallo sono semplicemente incollati, per cui, se si sollevano, prima di reinserire il flat bisogna eventualmente incollarli con super attack:

Di seguito un recap della riparazione.

  • sostituito CPU 8501R1 con equivalente da C16 funzionante
    • lo schermo nero non è comparso, ma al suo posto è arrivato un garbage screen
  • dalla Diag264 sono emersi problemi di RAM nel chip U13
  • altri banchi non funzionanti (U16 e U17) sono stati trovati col piggibacking
  • dissaldato banchi RAM non funzionanti; saldato zoccoli e inserito chip RAM 8264:

Soluzione: sostituito CPU 8501R1 e 3 chip RAM

Datassette

Sintomo

Sintomo: il datassette non legge le cassette

Analisi

Oltre a non leggere le cassette, in una che usa il Turbo tape le righe colorate orizzontali non sono consecutive, ma separate da ampie porzioni di blu.

Allineamento testina

Ho:

  • scaricato un programma per allineamento testina del Datassette da qua
  • caricato il programma sulla Kung Fu Flash
  • una volta avviato basta seguire le istruzioni a video:

In sostanza, si tratta di:

  • inserire una cassetta funzionante e premere Play
  • premere F1 o F3 a seconda che la cassetta sia originale o meno (Turbo tape)
  • dovrebbero comparire 2 o 3 colonne che devono essere rese le più compatte possibili, girando con un cacciavitino la vite dell'azimuth
  • si può quindi uscire con Return

Provato a rileggere la stessa cassetta di prima e adesso le righe compaiono in maniera consecutiva e senza ampi spazi blu in mezzo. Inoltre il caricamento viene portato correttamente a termine e il gioco si avvia.

Soluzione: allineato azimuth testina

Datassette #2

Sintomo

Sintomo: premendo Rewind o F.Fwd la cassetta non si muove

Analisi

Provato lo stesso datassette su di un altro C64 e qui il lettore funziona.

Giusto come reference, inserisco qui il pinout del connettore datassette:

I 6 V del motore si attivano solo quando si premono i pulsanti sul datassette, altrimenti il pin resta a circa 0 V.

Riparazione

Soluzione: pulito bene con alcol IPA e cotton fiocc i contatti del pettine del connettore datassette sul C64. Il comandi sul datassette hanno ripreso a funzionare e i giochi a caricare.

C64C

Sintomo

Il computer si avvia, ma è tutto in minuscolo. La tastiera non risponde, solo premendo alcuni tasti si vede qualcosa, ma l'output è sbagliato

Analisi

La CIA 6526A (U1) è il principale sospettato in questi casi; la ver. A si tratta di un equivalente del 6526, solo che può funzionare anche a 2 Mhz. In ogni caso, il C64C accetta entrambe le versioni.

  • Inserito 6526 da altro C64 con tastiera funzionante: stesso sintomo
  • Testato il 6526A su altro C64: funziona
  • diagnostico 586220 senza harness kit su keyboard dà “OPEN” (forse per la mancanza del kit?)
    • la coppia di valori orari in basso a destra sono uguali tra AM e PM, segno che la CIA 6526A dovrebbe essere ok

:!: Dopo verifiche, il chip CIA1 che governa la tastiera sul C64C è quello di fianco al pettine della stessa, sulla destra della mainboard. Ho agito sul CIA sbagliato!

  • rimosso CIA1 corretto: aveva un piedino rotto e saldato alla meno peggio!
  • messo CIA2 su zoccolo del CIA1: garbage screen (due volte)
    • poi schermo nero: saltato fusibile!
    • inserito 6526 da U1 a U2, per testare il chip: si vede schermo normale, senza cursore, come ovvio che sia visto che U1 adesso è vuoto
    • … dopo varie prove con schermo nero, ho rimosso lo zoccolo di U1: adesso il computer si avvia, ma come da sintomo iniziale non funziona la tastiera
  • installato nuovo zoccolo (in realtà due file di zoccoli): inserito 6525 su U1: la tastiera non va (cursore lampeggiante, of course)
  • eseguito test continuità pin CN1 (tastiera) e U1 (6526): si tratta di 20 pin; avevo saldato male il pin 5 dello zoccolo;
    • risaldato pin 5: test continuità adesso ok, ma la tastiera ancora non va
  • provato altra CIA: tastiera ko
    • invertito CIA: idem
  • :!: inserito cartridge Jupiter Lander e i tasti 'A', 'D' ed 'F1' funzionano! Invece la cartuccia Omega Race no…
  • ipotesi di problema su ROM Kernal+Basic:
    • ordinato EPROM 27128 perchè l'immagine ROM è da 16 KB. In più i PIN vanno bene, non serve adattatore per zoccolo
    • programmato EPROM, testata: stesso effetto
    • testato PIN 4066 (U18) tra U1 e CN1; comportamento simile a 4066 su C64 con tastiera funzionante
  • inserito cartuccia Lemans: il paddle funziona e anche 'A' e 'F1'
  • :!: provato poi a premere alcune combinazioni di tasti: '1' e '2' esce '2', '7' e '8' esce '8', '3' e '5' esce '5'; premendo '7' + altri tasti questi escono: 'Y','U','G','H','V','B'
  • cambiato zoccolo CIA1 con più standard 40 pin: stesso problema tastiera
  • :!: inserito Kung Fu Flash: il joystick sulla porta 2 consente di muoversi nei menu e selezionare le voci
    • :!: provato gioco Choplifter (gli altri richiedono di premere RUN/STOP per essere avviati): usa joystick su porta 1, però l'elicottero va sempre 'su', come se ci fosse qualcuno che spinge la leva joystick verso l'alto
Questo aspetto legato alla leva del joystick 1 apparentemente 'bloccata' verso l'alto si rivelerà decisivo per il troubleshooting
  • testato segnali su CN1 con oscilloscopio:
    • i pin da 3 a 11 sono a 5V
    • i pin da 13 a 19 sono a 5 V con dei drop con frequenza a 60 Hz, come da norma
    • :!: il pin 12, che corrisponde alla Row 0 nella matrice tastiera, segna 0.6 V invece dei 5 V di un connettore funzionante; lo schema del collegamento completo è il seguente:

In pratica: pin 1 Control Port 1 ↔ filtro EM6 ↔ linea JOY A0 ↔ pin 12 CN1 tastiera ↔ ROW 0 ↔ porta in ingresso PB0 su CIA1

Il pin 1 della porta joystick 1 controlla effettivamente l''UP' del joystick! Quindi, il fatto che la linea PB0 sia bassa (0.6 V corrisponde a low) spiega il comportamento del joystick

E' come se un'intera linea di tasti (Row 0) sia bloccata; di seguito la keyboard matrix per il C64:

Funzionamento matrice tastiera

Il C64 dice al 6526 di mandare impulsi per ogni porta output COLx (PAx) e, nello stesso momento, legge le porte input ROWx (PBx); quando un tasto sulla tastiera viene premuto… FIXME

La domanda allora è: cosa tiene la linea PB0 bassa?

Riparazione

  • rieffettuate saldature pin 12 su CN1 e pin 10 su zoccolo CIA1 (PB0): stesso problema
  • :!: rimosso filtro EM6: PB0 è tornata a 5 V e la tastiera funziona! 8-)
    • il filtro EM6 l'avevo precedentemente testato (continuità tra i pin esterni, nessuna continuità dagli esterni verso l'interno) e non aveva problemi; l'ho quindi risaldato. La linea PB0 è rimasta a 5 V e la tastiera continua a funzionare
  • test effettuati: Choplifter su porta 1 joy ok, joy 2 ok, tastiera ok, datassette ok
  • effettuato pulizia standard, case e tastiera

Ecco come appare il C64C riparato e con una tastiera nera, al posto della standard, così che ogni volta che lo userò mi ricorderà del tempo che ci ho perso sopra!

Risaldato filtro EM6 che teneva la linea PB0 tastiera giù

In casi simili, bisogna verificare sul CN1 se le tensioni arrivano a 5 V su (quasi) tutti i pin, come indicato sopra.

C64 #4

Sintomo

Il computer si avvia con bordo e sfondo corretti, ma con un garbage screen

Analisi

Concentro la mia analisi sui chip che possono essere coinvolti nella generazione di questo garbage screen.

  • 901225-01 Char ROM: dissaldato, zoccolato e messo sostituto → garbage screen uguale
  • CIA U2 (dopo aver verificato la Pictorial Guide: dissaldato chip e fatto partire il computer senza CIA2 → funziona :!:
    • installato quindi zoccolo e messo altra CIA 6526 → OK
Dopo qualche tempo ha ripreso a dare nuovamente garbage screen. E' necessaria una nuova analisi.
  • il computer parte correttamente con la Dead Test 781220
  • il gioco Jupiter Lander funziona (anche tasti)
  • il gioco Lemans funziona (anche tasti)
  • :!: toccato col dito la Char ROM 901225-01 e lo sfondo corretto inizia a comparire, per poi scomparire una volta tolto il dito:

  • anche rimuovendo del tutto la Char ROM si ottiene lo stesso garbage screen, sintomo che il problema è proprio quel chip:

Riparazione

  • testato i pin dello zoccolo ROM char; hanno tutti continuità (ad es. verso i pin delle altre ROM), a parte un pin molto importante, che è il suo CS (chip select) che va al pin della PLA della linea ROM char, che non è attivo:

Se questa pista non è attiva, è impossibile per la PLA selezionare la ROM char e quindi è come se quest'ultimo chip non funzionasse

Ho provato a risaldare i contatti, da una parte e da un'altra, ma senza successo. Ho preferito quindi più velocemente fare un ponte con un cavo di rame, che metta in contatto il pin 20 CS della ROM char col pin 15 della PLA:

Il trucco ha funzionato e adesso il computer si avvia regolarmente!

Il corretto funzionamento di tutti i suoi componenti è confermato dal dead test con il kit di harness collegato:

Sostituito CIA2; ricreato pista tra ROM Char e PLA. Purtroppo il SID si è rivelato parzialmente difettoso, quindi l'ho sostituito con un altro 6581

C128

Sintomo

Il computer si avvia correttamente, ma dopo pochi secondi a volte si freeza, semplicissimi programmi Basic partono ma poi danno Syntax Error, in modalità C64 ha dato un Out of Memory e in entrambe le modalità ogni tanto cambiava caratteri e/o colori

Analisi

Visto i sintomi 'strani', in più con un indicazione di 'Out of memory' sospetto subito problemi alla RAM, che vengono confermati con l'inserimento della Dead Test cartridge 781220, che segnala 7 flash all'avvio.

Come da manuale della Dead Test, sette flash corrispondono ai banchi U39/U47:

Riparazione

Procedo quindi a:

  • dissaldatura RAM segnalate come difettose
  • inserimento zoccolo
  • inserimento 'nuove' RAM 4164
Bisogna fare attenzione al verso di inserimento dei chip! Sul C128, a differenza del C64, molti chip vanno inseriti con la tacca verso il basso della scheda.

Dopo aver inserito le memorie col verso corretto, il computer funziona, così come il dead test viene portato a termine:

Sostituito banchi RAM segnalati come difettosi dalla Dead Test

VIC 20 #3

Descrizione

Si tratta di un VIC 20 prima serie, con tastiera Eurostile:

Anche la scheda è particolare, con generosi dissipatori:

Infine l'alimentatore è diverso dai successivi, ha un connettore a due poli ed eroga solo 9 VAC (e non 5 VDC):

Sintomo

Il computer si avvia correttamente, ma i caratteri sono sfuocati e i colori non nitidi

Analisi

Su di un sito, per questo tipo di VIC 20 con gli stessi sintomi, escludono problemi di VIC chip e dicono di verificare i condensatori, uno arancione in particolare:

Riparazione

In realtà, prima di effettuare un test dei condensatori, ho provato semplicemente a inserire un VIC chip sicuramente funzionante, cosa che si è rivelata corretta!

Sostituito VIC chip

Plus/4 #2

Descrizione

Si tratta di un Plus/4 con la tastiera molto ingiallita:

Sintomo

La tastiera non funziona, ma i tasti funzione sì e anche quelli cursore

Analisi

I sintomi sono identici alla situazione descritta qui; ma in quel caso si sono limitati a cambiare tastiera.

Diag 264

Provata una cartridge Diag 264, senza harness kit (per istruzioni vedi qui):

Testato la Diag 264 su di un Plus/4 con la tastiera funzionante; il 'BAD' sulla tastiera (e sulle altre porte) compare ugualmente, segno che sarebbe necessario il terminatore dell'harness kit

Scheda

La scheda si presenta relativamente pulita e in ordine:

Le tensioni sulla User Port (stessi pin del C64) sono ok:

Jack Attack

Il gioco Jack Attack, sia su cartuccia stand alone, sia sulla Diag 264 risponde ai comandi joystick, anche se non sembra seguire i comandi di direzione esattamente.

Service manual

Scaricato il Plus/4 Service Manual; dall'analisi della keyboard matrix i tasti cursore sono inseriti al suo interno, così come tutti gli altri:

E' possibile testare la tastiera scollegata premendo un tasto (ad es. rovesciandola e inserendo sotto ad essa un 'perno' che, con il peso della tastiera, produce la pressione del tasto) e testando con un multimetro le 2 connessioni del tasto; ad es. i pin del connettore tastiera 17 e 5, come da matrice sopra, se viene premuto il tasto '1', danno continuità.

Ci sono 18 pin sul cavo flat della tastiera, configurati così:

Smontaggio tastiera

Ci sono le solite vitine da svitare, simili a quelle del C64, così come bisogna dissaldare i reofori che si collegano al tasto Caps Lock; di diverso c'è il LED, che tiene ferma la tastiera tramite un piccolo perno di plastica, che bisogna sollevare delicatamente con un cacciavite sottile:

:!: Fare attenzione ai 4 tondini di gomma dei tasti cursore e ai 4 dei tasti funzione, che sono appoggiati e rischiano di cadere:

:!: C'è anche una piccola molla solo appoggiata, vicino al LED:

Pulizia tastiera

Dopo una pulizia del PCB con WD40 detergente contatti e dei gommini dei tasti con cotton fiocc imbevuto di IPA qualche tasto comincia a funzionare. Altri tasti sono 'duri', per cui sembra necessario il trattamento con soluzione a base di grafite.

Dopo aver spennellato i contatti di gomma con soluzione a base di grafite

Linee keyboard

Verificato i nuclei di ferrite a valle del connettore flat della tastiera FB49-56: misurano tutti circa 4.90 V (si possono misurare indifferentemente sul pin destro o sinistro, danno lo stesso valore). Dovrebbero corrispondere alle ROWS=Inputs; se nessun tasto è premuto stanno a 5 V, tramite le resistenze di pull-up del chip TED:

Le Colonne sono da intendere colonne di tasti presenti sulla tastiera del Plus/4; nella matrice sopra in realtà sono messe come righe :!: :

Mentre i nuclei FB41-48 misurano tutti 0 V e dovrebbero corrispondere a COLUMNS=Outputs

Qui viene spiegato il funzionamento di una keyboard matrix C16/Plus4; qui invece c'è un video FIXME

Nel Service Manual, relativamente alla tastiera, si suggerisce:

Riparazione

bla bla bla

VIC 20 #4

Descrizione

Arrivata solo una board di un VIC 20CR; da un primo test sembrava tutto funzionante, colori a video assenti a parte, poi ho involontariamente causato un cortocircuito sui pin della User Board, appoggiando distrattamente il coperchio della schermatura del VIC chip sopra la stessa porta (probabilmente sull'angolo a sx della stessa, dove c'è l'alimentazione 9 VAC).

Sintomo

A seguito di questo cortocircuito, il computer è rimasto acceso, i giochi su cartuccia sono funzionanti, ma il datassette non funziona più.

Colori a video assenti

Datassette non risponde più ai comandi

Analisi

Colori assenti

Relativamente ai colori a video assenti, ho provveduto a regolare il trimmer di destra vicino al VIC chip con cacciavite plastico/ceramico apposito:

Regolando il potenziometro di destra ho risolto il problema del colore.

Datassette non funzionante

Per il problema intercorso sul datassette invece ho inizialmente effettuato pulizia approfondita contatti porta datassette, senza esito.

Mi sono quindi concentrato sulla parte di alimentazione della scheda:

I 9 VAC arrivano sulla User Port dal cavo nero che attraversa tutta la parte superiore della scheda;

  • verificato che manca la tensione 9 VAC nei due pin centrali del ponte a diodi:

  • ed infine verificato che il fusibile su quel ramo è saltato :!:

Da quanto scritto sopra circa l'alimentazione della scheda VIC 20, questo può funzionare senza problemi anche in assenza del ramo 9 VAC, che serve solo per la User Port e appunto il Datassette.

Riparazione

Sostituito fusibile, che era scattato a seguito del corto dei pin 9 VAC sulla User Port

Il fusibile rotto era da 1A (sigla T1AL250V); ne avevo solo uno da 4A, che come test è andato bene. Ma è sconsigliabile utilizzarlo in produzione; ho ordinato dei fusibili dello stesso amperaggio di quello rotto.

C64 #5

Intro

Il 'paziente' è una board 250407, con bel chip VICII ceramico:

Sintomo

Sintomo: schermo nero, con aggancio del segnale video (blip iniziale)

Analisi

  • pulito scheda un po' impolverata e pulito contatti user port e cassette port
  • testato fusibile, tensioni DC e AC su user port e su uscita 7812 e 7805: ok
  • lo schermo nero permane anche con la Dead Test (nessun lampeggio)
  • test termocamera:

La ROM Kernel (901227) pare effettivamente tanto calda… More on that later
  • CPU:
    • linee indirizzi apparentemente ok
    • linee dati: D0 e D1 bassi 1,8/2 V, a volte sale sopra 4 V:

Sulle linee dati si dovrebbe vedere attività e segnali che raggiungono i 5 V

Riparazione

Visto le tensioni troppo basse sulle linee dati D0 e D1 ho dissaldato CPU; testata su muletto, ma si e rivelata funzionante.

Ho quindi cercato di capire perché D0 e D1 fossero bassi; le RAM da termocamera figuravano fredde, quindi ho dissaldato il multiplexer U25 74LS257; sostituito, lo schermo ha continuato ad essere nero e le linee D0 e D1 basse.

A questo punto sono ritornato sulla temperatura elevata della ROM Kernal; sebbene mi risultasse alta su di una scheda 250425, non lo era altrettanto su di una 407. Ho quindi dissaldato il pin Vcc della ROM e, come per magia, la Dead è partita correttamente!

Ho quindi dissaldato completamente la ROM Kernal, saldato uno zoccolo e recuperato una ROM da una precedente board donatrice.

Il test con la Diag card e relativo harness kit ha dato esito positivo:

Soluzione: sostituito ROM Kernal difettosa, che era probabilmente in corto, visto la temperatura elevata, causando problemi sul bus dati

C64 #6

Intro

Dopo un po' di tempo riprendo in mano questo C64, che questa volta non si avvia.

Sintomo

Sintomo: garbage screen colorato

Analisi

All'avvio compaiono pattern colorati variabili:

Inserendo la cartuccia di Jupiter Lander si vede solo qualche spezzone di testo (ad es. in basso 'HI' e anche 'FUEL'):

Dead Test

Inserendo una cartuccia Dead Test 781220 vengono presentati a video 3 lampeggi, indice della RAM U11 difettosa.

Termocamera

L'analisi con la termocamera evidenzia la RAM U11 fredda (probabilmente 'morta'):

Riparazione

Dissaldato RAM U11, zoccolato e inserito nuova RAM 4164: il sistema è ripartito correttamente

La nuova RAM adesso non è più fredda:

C64 #7

Intro

Questa volta si tratta di una 250407 con solo VICII e SID zoccolati.

Sintomo

Sintomo: schermo nero con aggancio segnale video iniziale

Dopo riduzione a sistema minimo presenta lampeggi variabili

Analisi

Ispezione visiva

Da un'ispezione visiva non si notano lavorazioni o manomissioni sulla scheda

Misurazione tensioni

Su di una scheda mai testata, conviene prima di procedere col test tensioni, rimuovere i chip zoccolati, così da evitare che si danneggino se la scheda ha problemi

Testato tensioni: sul pin di uscita dei regolatori di tensione 7805 e 7812 ottengo rispettivamente 5,1 e 12,3 V. Sulla User port invece sono presenti 4,95 VDC e 9,11 VAC. I valori sono quindi ok.

Oscilloscopio

Con l'oscilloscopio misuro:

  • il reset al pin 40: il segnale resta a 0 V per 1 secondo e poi si stabilizza a 5 V
  • clock in e out sulla CPU ai pin 1 e 39: ottengo per entrambi 984 KHz, che per un VICII PAL (che è quello che genera il clock) sono corretti

Termocamera

Con la termocamera verifico la temperatura dei chip, che risulta essere elevata per il VICII, ma nella norma per tale componente e per la Kernal ROM.

  • VIC II:

  • Kernal:

Dall'immagine sopra si può apprezzare come invece le RAM siano apparentemente calde 'il giusto'.

Come indicato più sotto, per arrivare ad un sistema minimo non è sufficiente dissaldare il solo pin Vcc come indicato qui, ma tutti i pin, altrimenti possono interferire con gli altri chip e con le letture dell'oscilloscopio
  • Provo a dissaldare il PIN 24 Vcc della Kernal ROM: a differenza di qui la Dead Test dà schermo nero
Dopo aver dissaldato il pin Vcc, controllare sempre la mancanza di continuità con il ramo a 5 VDC; in caso contrario muovere il pin nella piazzola con una pinzetta
  • Visto che il VIC II è zoccolato ed è molto caldo lo sostituisco con uno sicuramente funzionante: sempre schermo nero

Muletto

Su di un muletto testo:

  • VIC II: OK, sul muletto funziona
  • SID: schermo nero e una volta garbage screen; quindi, oltre ad essere difettoso, deve avere un corto, che impedisce l'avvio del computer :!:

Sistema minimo e Dead Test cartridge

  • Ritesto nuovamente il C64 in esame con il suo VIC II, ma senza SID: con Dead Test sempre schermo nero…

Considerato che la Dead Test parte con un sistema minimo composto da: CPU, PLA, VIC II e sottosistema RAM, comincio a dissaldare il pin Vcc dei chip non necessari alla Dead Test:

  • dissaldo il pin 24 Vcc della 901226 (Basic ROM): dopo un'attesa di qualche secondo che parta la Dead Test, ottengo un garbage screen, consitente tra un reboot e l'altro (sempre garbage screen e sempre lo stesso tipo):

  • dissaldo il pin 24 Vcc della 901225 (Character ROM): stesso garbage screen di sopra della Dead Test

Pictorial Guide

Prima di procedere con ulteriori dissaldature, controllo la Pictorial Guide, alla ricerca di un sintomo simile, ma non mi sembra di trovare nulla che si avvicini.

Ritorno a dissaldare alcuni chip, in particolare:

  • dissaldo il pin 20 Vcc della CIA1: stesso garbage screen di sopra
  • dissaldo il pin 20 Vcc della CIA2: :!:
    • ottengo subito 6 flash
    • poi spegnendo e riaccendendo 5 flash che sembrano consistenti ai successivi riavvii
    • scollegando l'alimentazione e la scheda Dead Test e ricollegandole ottengo 8 flash
    • al successivo reboot 3 flash
E' evidente che non c'è una singola RAM guasta, ma visto i flash variabili, i colpevoli potrebbero essere i multiplexer

Oscilloscopio #2

Riprendo l'analisi con l'oscilloscopio.

  • CPU: tutte le linee dati sono ok, con attività e ampiezza corretta:
  • invece per le linee indirizzi, A13 e A14 sembrano fissi a 5V con pochissimi picchi a 0V; mentre A7, A9 e A15 presentano questo segnale evidentemente non corretto:

Qui di seguito come le linee indirizzi vengono gestite dai due multiplexer:

Sembra esserci quindi un problema sul bus indirizzi; in questi i casi i sospettati potrebbero essere i multiplexer o la PLA.

  • provo quindi a dissaldare e testare i multiplexer 74LS257; questi si rivelano funzionanti sul muletto :!: e sul programmatore TL866II:

  • allora procedo a dissaldare e testare la PLA, che effettivamente è difettosa :!:, sia sul muletto che sul programmatore TL866II:

Purtroppo, anche inserita una PLA sicuramente funzionante, il computer presenta i flash variabili di prima.

  • in casi simili il colpevole può rivelarsi anche U14 cioè MOS 7709 o SN74LS258; infatti, dissaldato e testato sul TL866II risulta in failed :!: Usato un 74LS258 da altra board donatrice, compare però il seguente garbage screen:

Tra l'altro il Dead Test procede correttamente, con il cursore che ad un certo punto si sposta sullo schermo e addirittura viene testato alla fine il SID.

  • visto la presenza di vari chip logici MOS, notoriamente proni a fallire, mi decido a dissaldarli:
    • U27 MOS 7712 (7408) testato sul TL866II è risultato OK
    • U15 MOS 7711 (74139) testato sul TL866II è risultato OK
    • U8 MOS 7707 (7406) testato sul TL866II è risultato OK, mentre dava segnali strani all'oscilloscopio, rispetto ad una 250407 muletto.

Questo il datasheet del 7406, che è un inverter:

E questi i valori corretti per il 7406 da un muletto:

Pin SXValorePin DXValore
1 Basso 14 Alto
2 Alto 13 Basso
3 Onda 12 Alto
4 Onda#2 11 Alto
5 Basso 10 Basso
6 Alto 9 Basso
7 Basso 8 Alto

Invece, sulla board in esame per i pin 1, 11, 13 ottengo 1,44 V; controllando sullo schema della 250407 verifico che dipende dalla CIA2 in precedenza scollegata:

Mi decido quindi a tornare sui miei passi:

  • risaldo pin Vcc di CIA1 e 2 e la Dead Test parte correttamente! :!:

  • mi faccio coraggio e collego, uno dopo l'altra, le ROM e il sistema si avvia correttamente! :!:

Quanto indicato qui sopra, dopo la sostituzione del 74LS258, non era necessario ed era dovuto al fatto che avevo lasciato i chip saldati col solo pin Vcc scollegato. Ho quindi imparato che per far partire un sistema minimo senza ROM né CIA bisogna proprio dissadarle del tutto :!: Non è sufficiente dissaldare il pin Vcc. Ciò mi ha portato fuori analisi, sicuramente dopo la sostituzione del 74LS258, che era l'ultimo chip non funzionante.

Anche la Diag Test col kit harness ha dato esito positivo, così come l'avvio di un gioco.

Riparazione

Sostituito i chip SID, PLA e 7709 (74LS258)

1570 ?FILE NOT FOUND ERROR #3

Sintomo

Sintomo: avvio drive corretto, ma '?FILE NOT FOUND ERROR' caricando un disco, anche dopo aver pulito la testina con IPA

Analisi

Elettronica

Eseguito test per l'error channel e l'output è corretto:

73 CBM DOS V3.0 1570 0 0

Ne consegue che l'elettronica è a posto.

Testina

Eseguito test resistenza testina e i valori sono in un range compreso tra 11,5 e 33,3 Ohm, quindi nella norma.

1541 Diag/Test

Per una descrizione dei vari tool nella 1541 Diag/Test si può vedere il sito di Amedeo Valoroso

Alignment check

Eseguito l'Alignment check; la prima e seconda colonna devono essere uguali e la terza pari a 100; l'esito non è spettacolare per la quarta colonna (che dovrebbe in teoria avvicinarsi a 0), ma almeno non sono presenti valori 'rossi':

Questi valori potrebbero essere ottenuti anche in presenza di un drive e floppy funzionanti, per cui non ci si deve necessariamente preoccupare
Error Scan

Al termine del tool Error Scan ottengo un risultato con alcuni settori danneggiati.

Ciò potrebbe essere dovuto al floppy, più che al drive. Con un floppy funzionante non dovrebbe capitare
Speed Check

Con Speed Check verifico che la velocità del disco è molto vicina (298.5 RPM) al valore nominale di 300.

Fast Format

Adesso il disco viene formattato correttamente (quindi cancellato) e se letto presenta il suo contenuto.

Caricamento da floppy

Eseguito caricamento con successo dai floppy sicuramente funzionanti Zork 1 e Test/Demo Diskette, quindi questo è la migliore conferma che il drive funziona :!:

Riparazione

Il drive alla fine è risultato funzionante; potrebbe avere avuto bisogno di una reinizializzazione, tramite i tool di 1541 Diag/Test, in particolare grazie a Fast Format.

Più probabile che il floppy usato inizialmente non fosse funzionante, quindi è fondamentale usare un floppy testato e possibilmente originale (vedi qui).

Riferimenti per i drive

Altri suggerimenti utili sui drive si trovano qui.

C64 #8

Intro

E' una scheda 250425 con chip zoccolati, con una ROM Kernal custom comprensiva di cavo e interruttore posizionato a fianco le porte joystick, presumibilmente per selezionare il Kernal all'avvio. E' stato venduto come non funzionante.

Sintomo

Sintomo: schermo nero con aggancio segnale video iniziale. Una volta sistemato lo schermo nero, audio con scariche

Analisi

Ispezione visiva

Come detto, tutti i chip principali sono zoccolati. A parte la modifica alla ROM Kernal, che ho provveduto a rimuovere, noto un ponticello posticcio sul retro su U20 - 556, chip che è stato posizionato su di uno zoccolo:

Anche i pad del 556 sono stati manomessi in fase di dissaldatura:

Sistema minimo e misurazione tensioni

Visto che sono zoccolati, rimuovo le 2 CIA, le 3 ROM e il SID. Misuro le tensioni e i valori sia sulla User port che nelle uscite dei regolatori di tensione sono ok.

Dead Test cartridge

Inserisco la Dead Test, ma ottengo uno schermo nero.

Oscilloscopio

Grazie all'oscilloscopio verifico che su pin 1 e pin 39 (clock in e out) sia presente il segnale a circa 1Mhz, mentre su pin 40 (/RES) il segnale è basso :!: Ciò sta ad indicare un problema con il Circuito di reset, quindi sposto la mia analisi lì.

Circuito reset

Il circuito di reset serve in fase di accensione del sistema: quando si accende il Commodore 64, il 556 contribuisce a generare un impulso di reset che mantiene i vari chip in uno stato di reset finché la tensione di alimentazione non è stabile. Un 556 equivale a due 555; la piedinatura è così configurata, quindi in sostanza con un 555 a sinistra e uno a destra:

Nel caso di U20 - 556 del C64, dei due viene quindi usato il 'timer 555 B'.

Normalmente funziona così:

  • tutto parte da U20 - 556
  • all'accensione, sul pin 8 (trigger) la tensione dovrebbe scendere ad 1/3 di Vcc, ma qui non lo fa…
  • questo causa un output sui pin 12 e 13 (threshold e discharge), che parte da 0 e sale lentamente in un secondo circa fino a 2/3 di Vcc, per poi scendere immediatamente a zero, come visualizzato in questo video (parte dall'accensione, 0 V)
  • quindi visto dal pin 9 (output), esaurito il secondo spiegato sopra, la tensione va a da Vcc a zero, come visualizzato in quest'altro video (parte dall'accensione, 0V)
  • il pin 9 di U20 é collegato al pin 9 di U8 - 7406 oppure MOS 7707, che è l'ingresso di una porta inverter
  • il pin 8 di U8 é l'uscita invertita del pin 9, che è collegata al pin 40 della CPU 6510 (/Reset)
Normalmente sul pin 40 della CPU 6510 la tensione dovrebbe essere a zero inizialmente e dopo un secondo sale a Vcc

A differenza del comportamento normale, qui non sale la tensione sui pin 12 e 13 di U20 - 556 lentamente per 1 secondo, per poi discendere a zero, ma resta praticamente fissa a zero. Il 7406 invece sembra invertire correttamente i valori sulle sue porte, quantomeno la 8 e 9. C'è quindi un probabile problema sul 556 oppure sui componenti passivi di supporto

Riparazione

  • Ho provato a sostituire il 556 ma l'effetto non cambia
  • Testato in circuit i componenti passivi (resistenze e condensatori) del circuito di reset, ma confrontati con quelli di un'altra scheda 250425, sembrano uguali.
  • Ho comunque provato a:
    • rimuovere C34, testarlo fuori dalla scheda (è ok) e risaldarlo
    • rimuovere C24, testarlo con ESR meter, verificare che è ok, ma decidere di sostituirlo, perchè sembrava essere stato cambiato
Il comportamento del pin 8 (trigger) di U20 - 556 rimane identico (4,56 V), mentre adesso pin 12 e pin 13 mostrano quanto descritto nel funzionamento regolare sopra!
  • inserito Dead Test e, dopo qualche secondo, questa si avvia correttamente :!: Quindi il problema del Reset sembrerebbe essere stato risolto sostituendo C24.
  • il giorno dopo lo riaccendo e non parte; verifico che ancora una volta il problema è il circuito di reset; dissaldo il nuovo C64 e risaldo il vecchio e funziona :!: Poi il problema si ripresenta ancora una volta; questa volta risolvo rifacendo la saldatura di C24

Diag Test

Inserito tutti i chip restanti verifico che il computer funziona; l'audio si sente, ma è distorto, gracchiante, ci sono scariche.

La Diag Test dà esito positivo per tutti i chip/porte; il test audio è sempre gracchiante.

Audio

Per l'audio faccio le seguenti prove:

  • pulito zoccolo del SID
  • cambiato zoccolo
  • cambiato SID
  • provato SID su macchina muletto: qui non sento scariche e il SID funziona bene
  • cambiato cavo, 5 e 8 poli
  • provato su altra TV
  • pulito connettore video
  • togliendo il SID si sente silenzio

Su questa scheda sento sempre scariche continue che si sovrappongono all'audio.

Analizzo quindi il circuito a valle del SID ed in particolare dopo il pin 27 Audio output:

Mi accorgo che il condensatore C13 è stato saldato in malo modo, non da fabbrica:

Lo dissaldo e lo testo: sembra ok. Lo sostituisco con uno di uguale capacità. Faccio ripartire il computer è l'audio adesso funziona :!:

Sprite

Già avviando la Kung Fu Flash mi accorgo che alcune parole sono tremolanti; avviando alcuni giochi mi accorgo che gli sprite vengono visualizzati male:

  • pulisco i pin del VICII con carta abrasiva, ma non ottengo miglioramenti
  • cambio il VIC-II con altro funzionante e questo non esibisce problemi; potrebbe essere proprio il chip la causa

Alla fine decido di tenere il computer così, senza sostituire il chip, che esibisce un funzionamento marginale.

SpeedDos

Decido di testare il dual Kernal custom con cui avevo trovato il computer; in una posizione del pulsante si avvia come SpeedDos. Si tratta di una modifica hardware per il FastLoad da floppy drive, che deve essere presente anche nel floppy drive, per il quale è richiesto anche un cavo parallelo ad hoc, da collegare alla User Port del C64. Decido di tenere il Kernal custom così.

Risaldato alcune saldature fredde fatte dal precedente tecnico su condensatori C24 e C13; è rimasto qualche lieve disturbo audio e una visualizzazione errata degli sprite in alcuni giochi, a causa questo del chip VIC-II. Rimarrebbe da verificare anche il resto delle saldature fatte dal tecnico precedente su tutti i condensatori elettrolitici

C64 #9

Intro

La scheda in esame proviene da un C64C, ma si tratta stranamente di una 250407. E' abbastanza sporca, con presenza di una sostanza oleosa su ambo i lati, ossidazione su alcuni pin della CPU, sostituzione della ROM Char e probabile sostituzione, vista la presenza di zoccoli, dei due 74LS257 (multiplexer RAM) e di U6 (color RAM).

Sintomo

Sintomo: schermo nero con aggancio segnale video iniziale; errore su seriale e DEVICE NOT PRESENT su floppy drive funzionante

Analisi

Ispezione visiva e pulizia

L'ispezione visiva è stata svolta nella intro; rimuovo la polvere con pennello soffice e soffiatore. Pulisco residui oleosi e delle lavorazioni precedenti con alcol IPA.

Misurazione tensioni

Misuro le tensioni e i valori sulla User port sono normali per la 9 VAC, mentre la 5VDC è un po' bassa (4.74 VDC); le uscite dei regolatori di tensione sono nominali.

Termocamera

Dalla termocamera si evincono valori leggermente alti, ma nella norma; c'è il ponte a diodi che segna 55 gradi C.

Oscilloscopio

Grazie all'oscilloscopio verifico che su pin 1 e pin 39 (clock in e out) sia presente il segnale a circa 1Mhz, così come che sul pin 40 (/RES) il segnale resti basso per circa 1 secondo e poi passi alto, segno che il circuito di reset funziona.

Dead Test cartridge

Inserisco la Dead Test e ottengo 6 flash, che si ripetono anche dopo varie accensioni e spegnimento. Di seguito il manuale della Dead Test 781220.

Qui un estratto della pagina relativa ai flash:

La scheda in esame è una Rev.B, quindi 6 flash corrispondono alla RAM U22, che potrebbe essere quella difettosa (o la prima di una serie…), e al Data Bit 2. Inoltre, il manuale continua segnalando che:

  • i flash code sono indicativi di una Data Line tenuta su o giù, che può essere causato solitamente da:
    • un chip RAM, più di frequente
    • oppure da qualsiasi integrato (ROM, CPU, …) che si affaccia sul bus dati e setta quella linea in maniera errata
  • provare a cambiare la RAM indicata dai flash
  • se il risultato del Dead Test è lo stesso, provare a dissaldare i pin della Data Line indicata un integrato alla volta; se il risultato è lo stesso, risaldare il pin Data Line e continuare col successivo

Riparazione

Seguo l'esito della Dead Test e dissaldo la RAM U22; testata sul muletto risulta effettivamente non funzionante. La sostituisco e alla successiva accensione ottengo:

  • 8 flash (a freddo :?:)
  • alla successiva accensione, appare la schermata della Dead Test, indicando Color RAM BAD e fermandosi lì

La tensione sulla User port, dopo il cambio RAM, risulta nominale (5.00 VDC).

Questo mi torna con lo stato pietoso dello zoccolo della color RAM:

Sostituisco lo zoccolo di U6 e dissaldo una color SRAM da una scheda donatrice; purtroppo dà ancora Color RAM BAD, come si vede anche dai colori sballati, e dopo segnala anche come BAD la RAM U9 e la volta successiva U10 :!::

Ma testata sul muletto, la Color RAM funziona correttamente :!:

Devo capire perchè dà errore di RAM su U9 e U10 e anche sulla Color.

Custom Char ROM

All'inizio avevo notato che è presente una custom Char ROM, probabilmente per i caratteri spagnoli. Anche qui ci sono delle brutte saldature, per cui decido di rimuoverla:

Una volta rimossa la Char ROM il Dead Test ha terminato correttamente:!: e non ha dato problemi nè di Color RAM, nè di RAM

Non sento però alcun suono dal test SID :!:, per cui immagino sia non funzionante. Però, se fosse solo un problema di Char ROM, dovrei avere il boot normale con cornice e sfondo blu, cosa che non avviene. Ci deve essere qualche altro chip che dà fastidio.

Jupiter Lander

Il test con la cartuccia Jupiter Lander ha dato come esito, nell'ordine;

  • uno pseudo garbage screen, con alcune parole intelleggibili in basso ('fuel', 'score')
  • l'avvio del gioco con colori normali; forse le piattaforme di atterraggio sono errate, visto che sono blu e rosse :?:
  • avvio del gioco in bianco e nero

SID

Provo a rimuovere il SID, comunque non funzionante e a testare il sistema così: il risultato in Jupiter Lander è lo stesso di sopra

Kernal e Basic ROM

Rimuovo prima Kernal e poi Basic ROM:

  • Kernal ROM: il risultato in Jupiter Lander è lo stesso di sopra
  • Basic ROM: Jupiter Lander sembra avviarsi correttamente sempre, però un paio di volte ha dato colore in B/N

Test chip su muletto

Testato i chip sul muletto:

  • la Basic ROM funziona
  • la Kernal ROM invece no :!:

Saldato zoccolo su scheda in esame e inserita nuova Kernal ROM funzionante, ma non le altre ROM, il sistema parte così come fa quando mancano le altre ROM:

Saldati zoccoli mancanti (altre ROM e SID), inserito Basic ROM e nuova Char ROM, in sostituzione della custom Char farlocca: il Commodore 64 si avvia correttamente :!: Provato a fare diversi reboot, senza avere problemi di schermo in B/N.

Però a volte Jupiter Lander compare in B/N FIXME

Diag Test

Provo ad eseguire un primo giro di Diag Test con harness kit e, anche dopo una pulizia dei contatti con WD40, ottengo comunque alcuni errori. Quelli relativi al SID ci stanno, in quanto uso l'X-SID, ma altri non me li spiego:

Dopo poco ottengo anche quest'altra segnalazione sulle RAM, che permane anche dopo aver rimosso nuovamente tutte le ROM:

Kung Fu Flash

I giochi da Kung Fu Flash si caricano con difficoltà, in altri casi si bloccano e presentano questi sprite:

Oppure il menu della KFF appare errato o all'avvio si bloccano:

Ho comunque testato il VIC-II chip sul muletto con lo stesso gioco e questo problema non si è presentato. Quindi il VIC-II appare funzionante :!:

PLA

Per questi e gli altri sintomi sopra, provo a dissaldare la PLA e a sostituirla con una funzionante: il menu della KFF adesso è corretto e i giochi funzionano senza problemi :!:

Provato la PLA apparentemente non funzionante sul muletto e si comporta come la scheda in esame, con blocchi simili, quindi è confermato che la PLA è rotta.

Datassette

Il motore del Datassette non si avvia; effettuato una pulizia con cotton fioc e alcol IPA del pettine del Datassette sulla scheda e il registratore ha comnciato a funzionare.

Disk Drive

Cercando di leggere un floppy, compare il messaggio “?DEVICE NOT PRESENT”:

Anche da verifiche con la Diag Test compare:

  • dissaldato la CIA2 e sostituita, ma compare lo stesso errore
  • ad ogni modo, la CIA2, testata sul muletto, si è rivelata difettosa :!:
  • dissaldato la CIA1, provata sul muletto, ma si è rivelata funzionante
  • verificato le porte logiche di U8 (7406), collegate al drive:

Il pin 8, che comunque non è interessato dalla comunicazione seriale, è basso sui 3 V, ma anche il pin 12 è a 2,24 V (minore del valore basso TTL output) :!: Sostituito 7406, e adesso i valori sui pin sono corretti (5 V); però comunque ottengo l'errore ?DEVICE NOT PRESENT ERROR

Trovo una pagina web con un'indicazione interessante relativa ai diodi di protezione un'altra con indicazioni sistematiche su come diagnosticare i problemi alla seriale.

Mi concentro però sull'analisi della scheda, in particolare sulla parte dove sono presenti diodi e resistenze collegati al 7406:

Come si vede quella parte di scheda sembra ricostruita e poi tenuta insieme tramite resina; controllando con il tester ne viene fuori una pista risulta interrotta. Si tratta della linea Data della comunicazione seriale (le altre linee sono Atn e Clk), come si evince anche da PCB Explorer:

Procedo quindi a ponticellarla:

Questo singolo intervento ha risolto i problemi della seriale; adesso il floppy drive funziona e la Diag non segnala problemi sulle CIA, nè sulla User o Serial port

Schermata in B/N

Ho notato che un'accensione su dieci presentava il video in bianco e nero:

Per risolvere il problema, è stato sufficiente agire su questo trimmer, girandolo di pochissimo verso destra:

Soluzione: alla fine i componenti guasti erano: una RAM (U22), la Char ROM custom, la Kernal ROM, il SID, la PLA, la CIA2 e il 7406; si è reso poi necessario ricostruire una pista legata alla seriale

C64 #10

Intro

Questo C64 sembra intonso; non noto sporcizia o polvere. Aperto il case, le viti offrono una resistenza, segno che probabilmente non è mai stato aperto prima. Dentro è presente una bella 250407, che appare lucente e intonsa:

Sintomo

Sintomo: schermo nero con aggancio segnale video iniziale

Analisi

Ispezione visiva e pulizia

L'ispezione visiva è stata svolta nella intro; mi limito a spolverare la scheda con un pennello a setole morbide.

Misurazione tensioni

Misuro le tensioni e i valori sulla User port sono normali sia per la 9 VAC, che per la 5VDC; le uscite dei regolatori di tensione sono nominali.

Termocamera

Dalla termocamera si evincono valori normali:

Oscilloscopio

Grazie all'oscilloscopio verifico che su pin 1 e pin 39 (clock in e out) sia presente il segnale a circa 1Mhz, così come che sul pin 40 (/RES) il segnale resti basso per circa 1 secondo e poi passi alto, segno che il circuito di reset funziona.

Dead Test cartridge

Inserisco la Dead Test e ottengo 3 flash, che si ripetono anche dopo varie accensioni e spegnimento. La scheda in esame è una Rev.A, quindi 3 flash corrispondono alla RAM U11.

Riparazione

Seguo l'esito della Dead Test e dissaldo la RAM U11; testata sul muletto risulta effettivamente difettosa:

La sostituisco e alla successiva accensione ottengo 7 flash, che corrispondo alla RAM U9. Testata sul muletto, anche questa effettivamente non va:

Sostituita e dopodichè il computer si avvia :!: Il Dead Test viene portato a termine senza problemi e anche il SID funziona.

Diag Test

Un test con la Diag Testtutto ok:

Kung Fu Flash

I giochi caricati dalla Kung Fu Flash danno risultato positivo.

Soluzione: dopo aver sostituito due RAM (marca MT) e la ROM Kernal il computer si è avviato correttamente

Amiga 600

Mi cimento per la prima volta in un recap di un Amiga 600; questa operazione è obbligatoria per questo tipo di macchina, in quanto è sicuro che i condensatori SMD con gli anni perdano l'elettrolita e rischino di rovinare la scheda.

Apertura case

Svitare le viti visibili sul retro (non ci sono viti sotto l'etichetta centrale col seriale):

Il case superiore si solleva facilitando l'allargamento degli scansi laterali con un cacciavite piatto, come indicato in questo video (al minuto 1:03). Invece questo video descrive il processo di disassembly completo di un A600.

Tirare il cavetto di alimentazione led in basso a destra.

Ribbon tastiera: sollevare la parte superiore del connettrore tastiera con un cacciavite sottile e piatto a sinistra e destra. Una volta sollevato sfilare il ribbon e la scheda appare:

Rimuovere il floppy svitando una sola vite sulla mainboard e tirando il connettore dati e quello alimentazione:

Sollevare e rimuovere il cestello metallico centrale:

Svitare l'unica vite che tiene ancorata la scheda al case in basso a sinistra. Per estrarre la scheda, spingere le porte seriali a destra verso l'interno e poi in alto. Sollevare quindi ed estrarre la scheda, con lo shield attaccato sotto.

Rimozione shield

Svitare i dadi esagonali delle porte video, seriale, ecc… sulla parte posteriore della scheda e anche la vite nella parte laterale della scheda, a fianco le seriali a 9 pin.

Per togliere lo shield da sotto la scheda, dopo aver svitato l'unica vite laterale, sollevare alcune lamelle e partire dalla parte bassa a destra e allargare con un perno quella in basso a sinistra.

Rimozione condensatori

Questa la situazione della scheda a questo punto:

Si notano alcuni condensatori che hanno avuto fuoriuscita dell'elettrolita:

Con stazione aria calda settata a 360 °C e aria a… stazionare sopra un condensatore SMD alla volta, se possibile da tutti i lati e sopra. Avere pazienza e non tirare; il condensatore dovrebbe spostarsi da solo. Rimuovere poi con una pinzetta.

Il tutto, come spiegato nel video di EMD69.

Rimuovere anche i condensatori elettrolitici THT con la stazione dissaldante.

Togliendo i condensatori si nota l'elettrolita fuoriuscito in vari punti:

Di seguito condensatori vecchi rimossi:

Lavaggio PCB

Per il lavaggio PCB seguire questo video di EMD69, che riassumo qui:

  1. rimuovere come spiegato sopra tutti i condensatori SMD e THT
  2. estrarre l'unico chip zoccolato FIXME
  3. spazzolare la scheda intingendo uno spazzolino da denti nell'acqua ragia
  4. risciacquare con acqua calda, aiutandosi con lo spazzolino
  5. spazzolare la scheda con sapone liquido
  6. risciacquare con acqua calda, aiutandosi con lo spazzolino
  7. ripetere l'operazione per la parte sopra e sotto della scheda
  8. asciugare accuratamente per vari minuti con compressore ad aria

Qui di seguito si vede la differenza dopo il lavaggio, nella stessa zona dell'ultima immagine sopra:

Mappa condensatori

Qui c'è una mappa del posizionamento dei condensatori. E un'altra mappa è presente qui.

Saldatura condensatori SMD

Questo video di EMD69 dà indicazioni su come saldare i condensatori SMD.

  • prestagnare i pad
  • fare attenzione alla polarità dei condensatori
    • la striscia nera indica il negativo
    • il lato positivo è smussato, quello negativo ha angoli a 90°
    • verificare il '+' presente sul PCB
  • usare
    • aria calda
    • oppure saldatore normale, fino a che il componente non 'affonda'

Metodo alternativo

In quest'altro video viene mostrato un metodo alternativo, dove vengono saldate solo le estremità.

AmigaOS (Kickstart + Workbench)

AmigaOS è composto di due parti:

  1. il Kickstart su ROM; una volta avviato presenta una videata con un floppy
  2. un Workbench su floppy, che deve parte dopo il Kickstart
    1. in alternativa al Workbench, è possibile far partire dei giochi su floppy/Gotek
Lo zoccolo del chip Kickstart è più largo del chip stesso; perchè sia inserito in modo corretto, il chip deve essere allineato sulla destra

Test

L'avvio di un gioco tramite Gotek avviene correttamente; video e audio funzionano perfettamente:

Pong console

Ho recuperato una vecchia Pong console clone degli anni '70, che veniva descritta come “funziona perfettamente”; la realtà è un po' diversa…

Questo tipo di console usano un chip all-in-one AY-3-8500 della General Instrument:

Sintomo

Sintomo: audio funzionante, ma schermo via modulatore RF assente

Collegando l'uscita RF all'ingresso antenna TV e sintonizzandosi sul canale 32 non si vede niente. Il resto della console sembra funzionare, in quanto i suoni cambiano usando i selettori della console. Il problema quindi sembra essere l'uscita video.

Riparazione

Aprendo la console vengono esposti la scheda principale e il modulatore RF:

La cosa da notare è che ci sono dei segnali in ingresso al modulatore RF, provenienti dalla scheda, che sono i seguenti:

Di questi il segnale composito e massa costituiscono il segnale video vero e proprio, i 6 Vcc servono ad alimentare i componenti all'interno del modulatore; testando il cavo giallo e Gnd all'oscilloscopio ottengo questo segnale:

Solitamente, il segnale composito video ha un'ampiezza di 1 Vpp, qui ottengo 2 Vpp; comunque il segnale di ingresso al modulatore appare corretto. Aprendo e testando invece il modulatore RF mi rendo conto che molti componenti sono in cortocircuito:

Mi decido quindi a rimuovere del tutto il modulatore RF, a prelevare il segnale composito e gnd e terminarli su di un connettore RCA:

Mod composito

Ottengo un output corretto a video! :!: Il problema è che è abbastanza scuro:

Amplificazione segnale composito

E' quindi necessario amplificare il segnale composito; per farlo si può usare un transitor 2N3904; ho usato questo schema:

Predispongo il circuito su di una breadboard:

L'amplificazione del segnale composito tramite transistor ha risolto il problema della scurezza del video:

Millefori

L'ultimo passo è quello di ricreare il circuito in maniera definitiva su di una piccola millefori:

Operazione correttamente riuscita!

Soluzione: dopo aver rimosso il modulatore RF, ho amplificato il segnale composito tramite un transitor e il video sul monitor appare brillante

C64 #11

Intro

Questa volta sotto i ferri finisce una scheda 250425 di un C64. La particolarità è la schermatura/aletta di raffreddamento del VIC II:

Sintomo

Sintomo: si avvia con un paio di caratteri strani a video, oppure 'Ready'

Analisi

Ispezione visiva

Non noto manomissioni alla scheda.

Misurazione tensioni

Misuro le tensioni e i valori sulla User port sono normali sia per la 9 VAC, che per la 5VDC; le uscite dei regolatori di tensione sono nominali.

Termocamera

Dalla termocamera si evincono valori normali:

Oscilloscopio

Testato con oscilloscopio la CPU:

  • clock in e out ok
  • reset ok
  • bus indirizzi A0-A11 ok
  • A12-A15 KO :!: (5V); controllando meglio questi pin hanno un comportamento strano; appena accesi sono ok, poi dopo 2 secondi si settano a 5V, con segnale sporco
  • bus dati D0-D7 ok

Riparazione

Verifico che le linee A12-A15 finiscono nel PLA :!:

Dissaldo quindi il PLA; ma testata su

  • programmatore:

  • e su muletto dà OK. Quindi il PLA sembra a posto.

Dead Test cartridge

Inserisco la Dead Test e ottengo 5 flash, che si ripetono anche dopo varie accensioni e spegnimento. La scheda in esame è una Rev.B, quindi 5 flash corrispondono alla RAM U10. Si tratta di RAM di marca MT, che notoriamente è fallace:

Sostituito U10, ottengo altri 7 flash, corrispondenti alla U9; sostituito anche quella il computer si avvia nel boot della Dead. Purtroppo il SID è risultato essere difettoso.

Diag cartridge

Anche l'errore sulla Control Port è dovuto al SID difettoso:

Kung Fu Flash

I giochi caricati dalla Kung Fu Flash danno FIXME.

Soluzione: dopo aver sostituito due RAM (marca MT) il computer si è avviato correttamente. Il SID non funziona.

VIC20 #5

Intro

Un VIC 20 un po' sporco mi capita tra le mani.

Sintomo

Sintomo: all'avvio presenta bordo azzurro e sfondo bianco ma niente caratteri. Inoltre all'inizio si notano delle strisce orizzontali che scompaiono verso l'alto.

Analisi

Ispezione visiva

Noto varie saldature sul retro che non sono sicuro siano originali. Per il resto mi concentro direttamente sul sintomo; bordo e sfondo sono presenti il che indica:

  • la CPU funziona
  • il VIC idem
  • le tensioni a maggior ragione sono ok

Quindi passo direttamente alla riparazione.

Riparazione

Giusto per recap, le ROM di un VIC 20 sono le seguenti:

ROMCodice
Basic901486-01
Kernal901460-03
Char901486-07

Il guasto apparente indica solitamente un problema alla ROM Basic. Ho quindi provveduto a programmare una EEPROM e a preparare un adattatore 2364-2764, come indicato qui e il computer è partito correttamente:

Diag test

Un test con una cartridge di Diag conferma il funzionamento dei componenti fondamentali del VIC 20:

Soluzione: sostituito ROM Basic con EEPROM appositamente programmata

VIC20 #6

Intro

Questo VIC 20 mi arriva di un colore molto giallo e con un buco con quello che sembra un adattatore per antenna RF.

Sintomo

Sintomo: all'avvio presenta schermo nero, con modulazione video.

Analisi

Ispezione visiva

Il modulatore RF è stato inserito direttamente nel case:

Inoltre mancano molte viti che fissano la scheda al case inferiore.

Tensioni

Misuro le seguenti tensioni sulla User Port:

  • 4,96 V DC
  • 10,41 V AC

La prima mi sembra giusto un filo bassina.

Oscilloscopio

Misurando la CPU all'oscilloscopio noto segnali che sembrano tutti a posto; questo mi spinge a dire che la CPU funziona correttamente.

Termocamera

Un test con termocamera non evidenzia componenti particolarmente caldi:

Riparazione

Kernal ROM

A questo punto, comincio a verificare i componenti zoccolati, cioè il VIC e la ROM Kernal (901460-03). Comincio da quest'ultimo, scelta azzeccata, in quanto rimosso la ROM Kernal e sostituita con altra originale funzionante il computer riprende a funzionare :!:

D'altro canto, la stessa ROM provata su di un VIC 20 funzionante produce ugualmente uno schermo nero.

Porte

Ulteriori test hanno evidenziato però alcune problematiche:

  • il datassette, a parte all'inizio, sembra non rispondere ai comandi di Play o Ffwd/Rwd, anche dopo una pulizia dei contatti del pettine
  • una cartuccia di Raid on fort Knox non si avvia; testato lo stesso gioco sul VIC20#5 e qui parte senza problemi
  • il joystick non va
  • collegando un drive 1541, al boot del computer dà schermo nero o bordo e sfondo corretti ma pieno di caratteri colorati senza senso:

L'insieme dei sintomi farebbe propendere per un problema al VIA (2) 6522 UAB3. Analizzando le varie porte con un oscilloscopio e comparando i segnali con una VIA di un altro VIC 20 funzionante non noto però significative differenze

Infatti, tutte queste periferiche vengono gestite tramite ingressi/uscite sulla VIA (2):

Ho quindi dissaldato entrambi i VIA 6522; non avendo abbastanza zoccoli, ne ho installato uno solo su UAB1, così da verificare se la VIA (2), apparentemente difettosa, poteva dare lì problemi di tastiera. E infatti la VIA (2) su UAB1 dà problemi di tastiera, confermando di essere difettosa :!:

Mi è infine arrivata una nuova VIA 6522, che ho provveduto ad installare, assieme a relativo zoccolo; testato quindi con successo il funzionamento di datassette, cartuccia, joystick e drive.

Soluzione: sostituito ROM Kernal con EEPROM appositamente programmata e VIA (2) 6522 UAB3

Riferimenti

Di seguito alcuni riferimenti utili per riparazioni dei retrocomputing Commodore.

  • Pictorial Guide C64: a fronte di una serie di sintomi a video, viene indicato uno o più chip che possono generare il problema relativo
  • Ray Carlsen: schemi e diagnosi da parte di un guru Commodore
  • Retro 64: alcuni casi di riparazioni C64, con descrizione dei fault più comuni
  • Sven's TechSite: immagini di misurazioni con l'oscilloscopio di quasi tutti i chip del C64
content/retrocomputing/riparazioni.txt · Last modified: 2024/11/16 16:25 by admin