Aprendiendo a reparar un Spectrum 48K ISSUE 2

Moderador: Fundadores

Responder
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8156
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 107 times

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por wilco2009 »

Bubu escribió:Bueno, bueeeeno, llevo un buen rato midiendo cosas. Y me ha salido algún dato muy pero que muy escamoso, a ver si los expertos me podéis decir si es normal eso o en cambio es una alarma:

- He sustituido el Z80 (realmente es un Z84) por otro Z84 y el pantallazo es idéntico.
- Alimentando con 9V y midiendo en el 7805 me sale Vin=8.84v, Vout=4.92v, y la imagen muestra las líneas pares horizontales casi inexistentes
- Alimentando con 12V y midiendo en el 7805 me sale Vin=12.15v, Vout=4.92v, y la imagen es más fuerte y ya salen todas las líneas horizontales
- Con el ZX apagado, todas las resistencias me miden 450Ω
- Con el ZX encendido, todas las resistencias me miden 500Ω, MENOS LA R2, que me mide menos de 300Ω
- He medido los valores lógicos de todos los pines de la ULA, y los que están fijos son los siguientes:

pin 4 (/WE) = 1
pin 5 (A0/A7) = 0 ¿QUE ESTÁ PASANDO AQUÍ?
pin 37 (A15) = 0 (esto es normal, a la ULA no le interesa A15)
pin 39 (Q) = 1 ¿Qué es Q en la ULA?

Hay otros pines a 0 ó 1 pero es normal, como p.ej. el pin 28 (SOUND) está siempre a 0 (jajaja, claro, si esto no pita)

Bueno, como veis, de todo lo que he medido tengo 2 preguntas concretas:

- ¿Es normal que R2 esté bien con el ZX apagado, pero cuando se enciendo sólo mide la mitad de impedancia?
- ¿Cómo es posible que A0/A7 de la ULA esté siempre a 0, pero A0/A7 en los 4164 pulsan?
Eso de que el pin 39 esté siempre a 1 está muy feo :? . Esa patilla es la señal del cristal de 14MHz. Quizás lo único que pasa es que con la punta lógica no eres capaz de detectar los cambios de estado. Prueba a medir voltaje, te debería dar en torno a 2.5V, aunque lo suyo sería medir con un osciloscopio (joder lo que aprendí ayer , eh flopping :D )

Lo del pin 5 también es feo, feo. ¿Donde has medido? ¿Directamente en la patilla de la ULA?. ¿Has medido continuidad entre la patilla de R17 y el pin 39 de la ULA?, ¿y entre el otro lado de R17 y y la patilla 7 de IC4?.
Hay dos opciones:

1) que el problema sea sólo del lado de las líneas que van desde IC4 hasta la ULA, con lo que no se notaría el problema ya que, aunque la ULA sólo podría acceder a las posiciones pares, cómo tú muy bien dices en un mensaje anterior, en ese caso mostraría las posiciones pares como las correspondientes impares.
2) que el problema esté en el lado de las líneas entre IC4 y el Z80, con lo que el Z80 ejecutaría instrucciones inconexas, y no debería ni siquiera escribir los doses en la RAM probablemente colgandose.

Bubu escribió:Merde, me acabao de dar cuén de que las resistencias que he medido, R1 a R8, no son las que tendría que haber medido, sino R17 a R23.
Bueno, las voy a medir tamién, pero sigue siendo extraño eso de R2.


PD: He vuelto a probar el divIDE, pero pone la pantalla en negro entera, y de vez en cuando el borde vibra y suena como un cuesco. Así que nada, me imagino que el divIDE necesita los +12V para funcionar, y este Spectrum los tiene anulados.
Echando un vistazo al esquema del divIDE, yo no veo que necesite +12V por ningún lado. Sólo +5V.
De todas formas si el problema está en el cristal o el las líneas de direcciones, es normal que no se inicie.

En cuanto a si el problema es de la ROM, la prueba no es concluyente porque no sabemos si el divIDE usa la ROM.
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".

Douglas Adams. Guía del autoestopista galáctico.
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

Creo que estás llegando al cotarro del asunto, wilco2009, cágate por las patas abajo con lo que he medido:

Imagen

Resulta que la punta lógica me dice que ULA(5) está a 0, ¡¡pero RAM(5) está en 0 y 1!!
¿Cómo es posible esto? ¿No es directa la conexión entre ULA(5) y RAM(5)?

Por otra parte, IC4(7) está en 0 y 1. Y no se vayan todavía, que aún hay más: la resistencia R17 mide (estando el ZX encendido) nada más y nada menos que 1800Ω, cuando debería estar en los 300Ω, de hecho el resto de resistencias sí está en torno a los 300Ω. Pero claro, eso no sisnifica como bien dices que R17 tenga esa impedancia, le puede estar afectando lo que esté en torno a ella, pero lo que hay en torno a ella es, según el esquema que he puesto, la ULA e IC4.

¿Tienes alguna idea de qué está pasando? ¿Estará realmente la ULA mal, al menos en su pin 5?


PD: Sigo sin entender la utilidad de esas resistencias a la salida de los multiplexores...
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8156
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 107 times

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por wilco2009 »

Bubu escribió:Creo que estás llegando al cotarro del asunto, wilco2009, cágate por las patas abajo con lo que he medido:

Imagen

Resulta que la punta lógica me dice que ULA(5) está a 0, ¡¡pero RAM(5) está en 0 y 1!!
¿Cómo es posible esto? ¿No es directa la conexión entre ULA(5) y RAM(5)?

Por otra parte, IC4(7) está en 0 y 1. Y no se vayan todavía, que aún hay más: la resistencia R17 mide (estando el ZX encendido) nada más y nada menos que 1800Ω, cuando debería estar en los 300Ω, de hecho el resto de resistencias sí está en torno a los 300Ω. Pero claro, eso no sisnifica como bien dices que R17 tenga esa impedancia, le puede estar afectando lo que esté en torno a ella, pero lo que hay en torno a ella es, según el esquema que he puesto, la ULA e IC4.

¿Tienes alguna idea de qué está pasando? ¿Estará realmente la ULA mal, al menos en su pin 5?


PD: Sigo sin entender la utilidad de esas resistencias a la salida de los multiplexores...
A que va a ser R17!!! :o

Saca R17 y mídela fuera, es perfectamente posible que cause los problemas que detectas.

Sobre la utilidad de las resistencias probablemente nos podrá iluminar flopping, pero yo pienso que deben ser para proteger la ULA de una derivación a tierra interna en otro chip, aunque en ese caso yo las hubiera puesto del lado de las memorias, pero los entendidos sabrán.........

Otra posibilidad que se me ocurre ahora, es que las resistencias le dan preferencia de acceso a las memorias a la ULA frente al Z80. ::?
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".

Douglas Adams. Guía del autoestopista galáctico.
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

OK, sacaré R17, a ver qué pasa, pero antes, ¡¡¡más medidas!!! AjAJaJajjaja

Resulta que R17 con el ordeñador apagado sí mide 300Ω. Así que tié toa la pinta de que cuando la desuelde voy a medir esos 300Ω normales.
Otra cosa, y esto ya entra en conflisto con lo que dice el esquema de WoS. En esa web, el esquema del issue 2 es como el que he puesto yo antes, uséase, el pin ULA(5) va diresto al pin RAM(5), y por medio se va a una patilla de R17.

Pero en mi Spectrum ¡¡eso no es así!! En mi Spectrum issue 2 el pin ULA(5) va a esa patilla de R17. Ya nu sé si ese esquema está bien, o es que me estoy volviendo loco siguiendo pistas, AjajAJJAja.
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8156
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 107 times

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por wilco2009 »

El esquema que yo uso es este:
ftp://ftp.worldofspectrum.org/pub/sincl ... matics.gif

Ahí si que viene pintada la resistencia en medio.

En cuanto a la medida de resistencias, hay que hacerla siempre con la tensión quitada. La medición de la resistencia se hace aplicando una pequeña corriente al circuito y utilizando la ley de ohm. Si hay una corriente externa ya en el circuito, esta influirá en la medida.

Por lo que dices sin tensión la medida es correcta, por lo que parece que la resistencia está bien.

¿Has comprobado continuidad de esa resistencia con la ULA (patilla 5) y con IC4 (patilla 7)?
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".

Douglas Adams. Guía del autoestopista galáctico.
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

Efestivamente ese es el esquema que estoy usando, pero a mí hay cosas que no me cuadran. Además, eso de que el bus de direcciones en ese esquema no refleje los remapeos del Spectrum me lía ya del todo.
Bueno, resulta que midiendo continuidades en la placa real, me encuentro con que el pin ULA(5) está unido a R17, y la otra punta de R17 va al pin IC4(7). Entiendo que eso es la línea A0/A7 del bus de direcciones.
Pero es que no me cuadra nada la continuidad de la RAM. Me sale que el pin RAM(5) no está unido con R17, sino con R19.

Y ya con esto termino de liarme del todo.

Podría desarmar otro Spectrum que tengo por aquí, pero si alguien tiene una placa por ahí a mano y me puede hacer el favor de medir estas continuidades, se lo agradecería un montón. Se trata de ver si el pin RAM(5) va a R17 o a R19.
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

Bueno, todo este lío que he tenido con A0/A7 no es tal. La culpa la ha tenido el esquema de WoS, que pone unas A's donde les da la gana.
Realmente la ULA va así:

pin 5 = A6/A13
pin 6 = A5/A12
pin 7 = A0/A7
pin 8 = A2/A9
pin 9 = A1/A8
pin 10 = A3/A10
pin 11 = A4/A11

Así las cosas el 0 del que pensábamos que se producía en A0/A7, no, se produce en A6/A13, que es lo que desde el principio he medido en el pin A6/A13 de la RAM.
El pin A6/A13 lo lleva la resistencia R17, la cual da un valor de unos 300Ω, por lo que volvemos al punto de partida: no veo nada raro en ningún sitio.

Aunque sinceramente sigo viendo raro el 0 de la línea A6/A13. Dices que eso es porque la ROM sólo está accediendo a la pantalla y la zona baja del BASIC, que está efestivamente en A13=0. Pero, ¿y qué me dices de A6=0? ¿Por qué A6 está a 0 (ya que lo está A6/A13)?
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

Vale, ya tengo claro de qué va esto del mapeo del bus de direcciones. Ahora sí. Voy a actualizar mi esquema y lo pondré por aquí. Siento los líos que estoy formando, pero en WoS no está nada claro.
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
Bubu
Demonio segundo orden
Demonio segundo orden
Mensajes: 1125
Registrado: 02 May 2013, 20:35

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por Bubu »

Os pongo el esquema de interconexiones del bus de direcciones del Spectrum (al menos en el issue 2), según he medido yo:

Imagen


Lo cual me hace corroborar mi teoría: el esquema en WoS está MAL (por mucho que flopping diga que está bien, jiji)
Si algo funciona... no lo toques. ¡¡Pero ni de coña!!
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8156
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 107 times

Re: Aprendiendo a reparar un Spectrum 48K ISSUE 2

Mensaje por wilco2009 »

Bubu escribió:Bueno, todo este lío que he tenido con A0/A7 no es tal. La culpa la ha tenido el esquema de WoS, que pone unas A's donde les da la gana.
Realmente la ULA va así:

pin 5 = A6/A13
pin 6 = A5/A12
pin 7 = A0/A7
pin 8 = A2/A9
pin 9 = A1/A8
pin 10 = A3/A10
pin 11 = A4/A11

Así las cosas el 0 del que pensábamos que se producía en A0/A7, no, se produce en A6/A13, que es lo que desde el principio he medido en el pin A6/A13 de la RAM.
El pin A6/A13 lo lleva la resistencia R17, la cual da un valor de unos 300Ω, por lo que volvemos al punto de partida: no veo nada raro en ningún sitio.

Aunque sinceramente sigo viendo raro el 0 de la línea A6/A13. Dices que eso es porque la ROM sólo está accediendo a la pantalla y la zona baja del BASIC, que está efestivamente en A13=0. Pero, ¿y qué me dices de A6=0? ¿Por qué A6 está a 0 (ya que lo está A6/A13)?
Cuando me decías que A13 siempre está a 0, no he caido que eso implicaba también A6=0. Eso no es nada lógico.

El problema puede venir ahí.

¿Has comprobado A13 y A6 del lado del Z80/ROM?
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".

Douglas Adams. Guía del autoestopista galáctico.
Responder

Volver a “Sinclair”