Travely.biz

Le ultime notizie, commenti e funzionalità da The Futura

Un microcontrollore ROM mascherato degli anni ’70 svela i suoi segreti

Un microcontrollore ROM mascherato degli anni ’70 svela i suoi segreti

Se acquisti oggi qualsiasi tipo di dispositivo elettronico, sarà probabilmente gestito da un microcontrollore con software memorizzato nella sua memoria interna di sola lettura (ROM). Il codice di questo software è spesso strettamente custodito dal produttore, che farà tutto quanto in suo potere per assicurarsi che non sia possibile leggere il contenuto del chip utilizzando lock bit o qualsiasi tipo di crittografia. Le cose erano molto più rilassate negli anni ’70 e ’80, quando il codice veniva archiviato non crittografato in chip EPROM standard o, per applicazioni su larga scala, in ROM integrate nei microcontrollori. La lettura del codice di questi microscopi era ancora molto difficile perché i chip semplicemente non avevano modo di smaltire il loro contenuto. [Andrew Menadue] Ho riscontrato questo problema durante il tentativo di riparare una vecchia stampante HP e ho dovuto farlo Applica un trucco intelligente per scaricare il contenuto del suo chip Mostek MK3870.

Il trucco principale [Andrew] Uno che ha scoperto era usato [Sean Riddle] Lui ha spiegato Sul suo sito web. Sfrutta il fatto che l’MK3870 ha TEST Il pin può essere utilizzato per disabilitare la maschera ROM e caricare il codice del programma sostitutivo direttamente nel minuscolo core di elaborazione. Preparando A LOAD Istruzioni che indicano la posizione della ROM e disabilitano brevemente la modalità test Mentre l’istruzione viene eseguita, il contenuto della ROM può essere letto dal software caricato esternamente.

Sebbene questo hack possa sembrare semplice, in realtà implementarlo è stato abbastanza difficile a causa dei rigidi requisiti di temporizzazione tra i segnali sui pin del clock, il bus dati e TEST spillo. [Andrew] La sua configurazione Raspberry Pi Pico funzionava per la maggior parte del tempo, ma in qualche modo il micro restituiva ancora un valore palesemente sbagliato ogni poche centinaia di byte. Non sono disposto a dedicare molto tempo alla correzione di questo problema, [Andrew] Ha applicato un trucco abbastanza semplice al suo codice: invece di leggere ogni byte una volta, esegue il ciclo di lettura 200 volte, restituendo un risultato solo quando tutte le 200 esecuzioni restituiscono lo stesso valore. Ora sono necessari diversi minuti per scaricare 4KB di ROM, ma da allora questo non è stato un grosso problema [Andrew] Ha solo una diapositiva da leggere.

READ  La nostra democrazia muore in stanze chiuse • Budstikka

Se hai una vasta raccolta di chip MK3870 che devi scaricare, potresti provare a ottimizzare il codice su [Andrew]Pagina GitHub. È una fortunata coincidenza che il 3870 abbia il potenziale da sfruttare TEST Caratteristiche; Spesso, l’unico modo per accedere al codice ROM della maschera è rimuovere il coperchio del chip e leggere otticamente i bit uno per uno. Tuttavia, le ROM con maschera sono ottime per l’archiviazione dei dati a lungo termine.