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.