Con questa applicazione vogliamo aiutare tutti i possessori del Sinclair QL ad identificare la RAM guasta, basandoci sulla schermata che ci darà la ROM Minerva. Qui a destra possiamo vedere un esempio di cosa verrà mostrato in caso di una RAM guasta. La prima linea rappresenta il valore scritto, la seconda quello letto e la terza è l’indirizzo che ci servirà per identificare quale banco di memoria. Se minore di $3000 parliamo di IC1-IC8, se maggiore o uguale a $3000 parliamo dei chip IC9-IC16, se maggiore o uguale a $4000 la memoria guasta è nell’espansione di memoria.

In base all’indirizzo possiamo capire di quale gruppo di RAM si tratta, mentre decodificando con degli xor e or i valori scritti e letti possiamo trovare la memoria guasta.

Non sempre questo metodo è preciso, mi sono capitati più casi che la RAM segnalata fosse in realtà buona, ma comunque è sempre un aiuto e se andassimo alla cieca di sicuro dovremmo dissaldarle tutte.

Potete trovare una guida sul funzionamento ed uno script per la decodifica sul sito nightfallcrew.com

Happy repair and subscribe to our channel! 

  (You can omit the nonsignificant zeros)
 
IC1 IC2 IC3 IC4 IC5 IC6 IC7 IC8 IC9 IC10 IC11 IC12 IC13 IC14 IC15 IC16

Altri articoli sui guasti

Mi è stato dato questo mouse da riparare con uno strano difetto.. Vediamo cosa aveva, ma prima capiamo cos’è!

Questo mouse prodotto dalla Commodore nel 1986 è il successore del mouse 1350, che non è propri un mouse a tutti gli effetti, come mai? Il 1350 era un mouse con uscita digitale, questo si collegava alla porta del C64 o 128 ed era come se vi fosse collegato un joystick, quando si andava a destra il mouse chiudeva il contatto della porta joy a destra, e idem per le altre direzioni, il tasto sinistro era il fire ed il destro era un secondo pulsante (pin 9). Che differenza c’è tra questo mouse ed uno tradizionale? beh, questo emulando le direzioni del joystick si muove sempre alla stessa velocità!, provate con una cartuccia tipo “The Final Cartridge 3” ed il joystick o il mouse, vi accorgerete che per arrivare in fondo alla schermata ci vuole diverso tempo. Se si usa un mouse proporzionale questo problema non esiste, se muoviamo il mouse piano, il puntatore si muoverà piano, mentre se lo spostiamo velocemente arriveremo in un attimo a fine schermo.
Il mouse tradizionale non fa altro che tenere traccia di quanti passi (movimenti) si fanno e dire al computer quale è la posizione per l’asse X e Y.

Eccoci arrivati al mouse 1351, questo infatti di default è un mouse proporzionale con il tasto sinistro come il fire ed il destro come la direzione del joystick su. In poche parole funziona come i paddle, quelli hanno un potenziometro che regola la tensione sugli ingressi potX (pin 9) e potY (pin5). Ma questo mouse non ha una resistenza variabile e nemmeno un segnale pvm poi stabilizzato, come passa questa informazione al SID?
Già, il SID oltre che ad occuparsi dell’audio, gestisce i segnali analogici fornendo poi al computer un valore tra 0 e 255 sugli assi X e Y.

Come funziona la modalità proporzionale?

Come detto prima dobbiamo passare una tensione al pin X e Y che verrà letta dal SID e convertita in digitale, tipo un moderno ADC converter, questo funziona così:
Il SID utilizza il clock del processore per campionare l’ingresso analogico e in tutto impiega 512 cicli di clock,
per i primi 256 clock il SID applica una resistenza interna al pin che deve leggere, facendo così scaricare il suo condensatore interno al chip. Successivamente scollega la resistenza di pull-down e aspetta che il condensatore interno alla porta si carichi raggiungendo una tensione soglia, ma per caricarsi il condensatore impiega del tempo in base a quanta tensione è applicata all’ingresso della porta che sta leggendo. Per ogni clock passato il SID aumenta il suo registro della porta fino a che non rileva che il condensatore è carico, ma se questo non raggiunge la soglia entro i 256 clock rimasti, per il registro il suo valore è 255, nulla collegato. Se il condensatore si carica prima della fine del conteggio allora avrà un valore minore di 255, infatti se si carica all’istante (primo ciclo di clock) il suo valore sarà 0.
Bene, ora che sappiamo come ragiona il SID e come legge questo valore, possiamo far in modo di caricare il condensatore applicando una tensione sulla porta, in qualsiasi momento.. o quasi!
Il mouse ragiona così:
Il cuore di tutto è il MOS 5717 che controlla i movimenti del mouse tramite i soliti fotodiodi (come un encoder) e tiene il conto della posizione del puntatore, come un mouse moderno, però per passare queste informazioni al computer usa questo metodo.
Aspetta che il segnale sulla porta potY si abbassi, segno che il SID sta iniziando il suo ciclo di scarica e successiva carica.
Controlla i movimenti del mouse e conta 256 cicli di clock, ma come fa? beh anche lui ha un quarzo a 1Mhz come il C64/128
Quando sono passati questi cicli, non fa altro che dare un impulso positivo alla porta X e Y al momento opportuno, contando quanti cicli passano e caricando istantaneamente il condensatore quando è trascorso il numero di clock corrispondenti al valore da dare al registro. Furbo no?!

Altra cosa da dire è che il mouse non lavora solo in questa modalità, è stato progettato per essere compatibile anche con il suo predecessore.
Tenendo premuto il tasto destro del mouse mentre si accende il computer o lo si collega ad esso, il mouse va in modalità 1350 e ragiona come mouse digitale, chiudendo le direzioni joystick in base a come spostiamo il mouse.