[zxspectrum] Re: ZXMMC+

  • From: Stefano Donati <sd75@xxxxxxxxxx>
  • To: <zxspectrum@xxxxxxxxxxxxx>
  • Date: Fri, 14 Mar 2014 14:21:11 +0100

Operazione di ripristino completata, capitano! ;)

Purtroppo ho dovuto far ricorso al "nastro" (si legga: il TAP, un notebook e 
tutta la potenza del mio stereo :D) perché il tasto 'T' mi dava una bella 
schermata piena di 0x39, tipica di quando manca la ROM. Ho aggiornato anche la 
bootROM all'ultima versione (non che fossi lontanissimo, mi mancava giusto uno 
0.01).

La tua guida è fatta benissimo,  complimenti! Adesso mi piacerebbe installare 
il backup del ResiDOS e fare un bel backup di tutto... piuttosto devo 
controllare quante SD non-HC ho in casa, visto che non sono più così diffuse.

Già che ci siamo vorrei completare l'opera con la schedina di Pino per 
attaccarlo alla USB del notebook... proverò a cavarmela da solo, ma non ci 
spero molto.... sono rimasto fermo all'epoca dei 74xx in packaging DIP e non ho 
mai messo mano a componenti/saldatori per SMD e simili, speriamo bene... 
qualsiasi suggerimento, da parte di chiunque, sulla dotazione è ben accetto :)

Grazie.
Stefano.

--- Messaggio originale ---

Da: "Alessandro" <alessandro.poppi@xxxxxxxxx>
Inviata: 13 marzo 2014 21:22
A: zxspectrum@xxxxxxxxxxxxx
Oggetto: [zxspectrum] Re: ZXMMC+

On 13/03/2014 17:30, Stefano Donati wrote:

Salve a tutti,

dopo aver pasticciato selvaggiamente ieri sera con ZXMMC+ e Multiface 128 mi 
sono accorto della loro incompatibilità, ma... troppo tardi: non riesco più a 
fare il boot con ResiDOS, possibile che il clash delle porte abbia potuto 
sovrascriverlo? Credete che possa aver fatto altri danni?

Mah, prima di tutto vorrei tranquillizzarti dato che al massimo potrai aver 
fatto dei "soft danni" :-) ovvero aver sovrascritto qualche banco di ram, cosa 
a cui si rimedia facilmente.

In quanto alla eventualita' che la cosa si sia davvero verificata, non lo 
escludo: dopotutto si tratta di banchi di memoria che vengono "esposti" in 
lettura ed eventualmente in scrittura (infatti c'e' una modalita' read-only) 
semplicemente scrivendo dei valori in certe porte I/O, per cui se queste stesse 
porte vengono usate da un altro dispositivo (e quindi dal relativo software che 
lo pilota) e' chiaramente possibile che succeda.

In particolare, per scrivere nella ram occorre interagire con la porta $7F:

D7         RAM WR Enable
D6         PAGE-IN Enable
D5         RAM/ROM Select
D4:D0    Page number (0 - 31)

In ogni caso: se hai sovrascritto il residos, "basta" reinstallarlo, caricando 
l'installer da nastro.

Alternativa: se la flash della tua zxmmc+ e' stata preparata mediante immagine 
da sd-card, come spiegato nello step 3-bis in questa pagina 
http://www.probosci.de/zxbada/zxmmcp/quickstart.html allora gli ultimi tre 
banchi (48K totali) contengono lo snapshot dell'installer del Residos che era 
disponibile all'epoca della preparazione dell'immagine stessa.

In altre parole, il bootloader implementa la possibilita' di salvare (premendo 
il tasto 'R') e ripristinare (premendo il tasto 'T') un singolo snapshot da 48K 
usando gli ultimi tre banchi di flash e nell'immagine proposta nello step 3-bis 
questo snapshot contiene l'installer del residos.

Se dal bootloader premi il tasto 'T' e ti compare magicamente l'installer del 
residos nella versione che vuoi, direi che sei a posto. In caso contrario, devi 
per forza caricarlo da nastro (e poi, prima di lanciarlo, premi 'R' in modo da 
metterti al riparo per la prossima volta, facendone una copia in flash) oppure 
seguire le indicazioni dello step 3-bis per creare l'sd-card necessaria a 
ripristinare tutta la flash.

Corollario:
Una volta che hai il residos funzionante, e' consigliabile tenere una sd-card 
"formattata" alla maniera degli snapshot raw gestiti dal bootloader. Infatti, 
il bootloader permette di salvare tutta la ram da 512K in uno snapshot su 
sd-card, premendo il tasto 'V' (ram backup). Allo stesso modo, puoi salvare 
tutta la flash con il tasto 'I' (rom backup).

Una volta che li hai sotto forma di backup raw, puoi ripristinarli come si fa 
per uno snapshot qualsiasi (selezionandolo con le frecce e poi premendo ENTER).

Ciao!

Other related posts: