[zxspectrum] Re: issue 6A

  • From: Gennaro Montedoro <genny_flick@xxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Mon, 12 Jan 2009 08:39:43 +0100

At 23.22 11/01/2009, you wrote:
Gia' che c'ero ho fatto qualche altra prova con l'issue6A di Eugenio.

A macchina fredda funziona tutto alla perfezione. Dopo qualche minuto l'ula
si scalda e non funziona piu' neanche a spingerla. Raffreddandola con
apposito spray, funziona di nuovo per qualche minuto.

Il problema si verifica eseguendo degli OUT a porte diverse dalla 254, che
funziona sempre. Inizialmente avevo provato quelle della zxmmc+, ma poi mi
sono accorto che si inchioda anche usando ad esempio 15 (che non corrisponde
a niente).

Il programma di test era:

10 let a = 0
20 out 15,a
25 out 254,a
30 let a = a + 1
40 if a = 8 then goto 10
50 goto 20

eliminando l'out 15,a il border cambia colore per sempre, altrimenti si
blocca quasi subito. Sottolineo che la porta 15 non esiste. Il problema si
manifesta anche su tutte le altre porte su cui ho provato, avendo
l'accortezza di tenere A0 sempre alto, tranne la porta 1: su quella va
sempre tutto bene.

Ed ora il particolare piu' agghiacciante: ho iniziato a togliere logica
dalla cpld per vedere quando sarebbe scomparso il problema. Non e' mai
scomparso, nemmeno con una cpld senza NIENTE salvo settare a livelli di
default le varie uscite, ovvero i chip select ram e rom = '1', databus alta
impedenza, nmi, romcs e wait = idem.

Direi senza ombra di dubbio che si tratti di un problema elettrico, di
carichi sui segnali, di capacita' parassite, di impedenze, di stregoneria.
Adesso cerco un esorcista sulle pagine gialle. Resta pero' l'ipotesi che la
zxmmc+ perturbi il clock tanto da mandare lo Z80 nel pallone, anche se con
l'oscilloscopio non vedo nulla di evidente e (tra parentesi) con tutti gli
altri modelli non ci sono problemi.

Se non sbaglio, Eugenio, mi hai detto di aver provato anche con una ula cmos
di quelle nuove?

Durante la precedente sessione di prove avevo attaccato l'analizzatore di
stati al bus Z80, constatando un po' sbigottito che il processore ad un
certo punto partiva per la tangente eseguendo cose sensa senso, ad esempio
leggere una istruzione, poi leggere quella successiva senza eseguire la
prima.

Ciao!



Puo' essere banale, ma la Issue6A possiede un 'link', denominato LK1 con il quale si abilita/disabilita l'amplificazione del segnale CLOCK CPU da parte della ULA attraverso TR3. Hai controllato?

Saluti.



Other related posts: