Problema de memoria extraño en ISSUE 3B [se repite ahora en un ISSUE 3]

Moderador: Fundadores

Avatar de Usuario
cdvazquez
Aspirante a demonio
Aspirante a demonio
Mensajes: 366
Registrado: 09 Jul 2014, 00:50
Been thanked: 8 times

Problema de memoria extraño en ISSUE 3B [se repite ahora en un ISSUE 3]

Mensaje por cdvazquez »

Hola a todos,

Esto viene de otro hilo que... por no contaminarlo más... pues abro aquí este y a ver si alguien me puede ayudar (Flopping ya me ha dicho algo).

Se trata de un ISSUE 3B que enciende correctamente (tras cambiar el 7805 y TR4) pero que, al cargar algún programa, no funciona (otro sí).

Haciendo el test típico de memoria, todo aparenta estar correcto. Sin embargo lanzando el bucle de escritura en la RAM de 0 y 255 en cada dirección de memoria, me da este resultado:

- Prueba que me pidió Flopping: 32800 hasta la 32816 -> Todo correcto
- Otra más que me comentó: 65400 hasta la 65416 -> Todo correcto
- De hecho... todo correcto hasta llegar a la 65334 y de ahí hasta el final. Os pongo los primeros errores de esa zona... aunque son todos igual:

[Dirección / escrito / leído]
65334 / 255 / 219
65336 / 0 / 183
65336 / 255 / 183
65337 / 0 / 45
65337 / 255 / 45
65338 / 0 / 180
65338 / 255 / 180
65338 / 0 / 93
65338 / 255 / 93
65340 / 0 / 175
65340 / 255 / 175
...
65345 / 0 / 52
65345 / 255 / 52
...
65353 / 0 / 0 -> ¡Uno bien! Sonó la flauta
65353 / 255 / 0 -> ¡Ah no! es que siempre parece ser 0... ;-)
...
...
Y llegado sobre el 65370 se reseteó ... curioso...

Dicho esto, juraría que la primera vez que lancé el test, no repetía lo mismo en la dirección con 0 y 255... pero ahora sí es así...

Gracias por la ayuda... que llegará, llegará...
Última edición por cdvazquez el 28 Abr 2017, 10:51, editado 1 vez en total.
Avatar de Usuario
flopping
Fundador
Fundador
Mensajes: 9971
Registrado: 29 Mar 2013, 15:26
Ubicación: Valencia
Been thanked: 122 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por flopping »

cdvazquez escribió: - Prueba que me pidió Flopping: 32800 hasta la 32816 -> Todo correcto
- Otra más que me comentó: 65400 hasta la 65416 -> Todo correcto
Vale, ¿estas seguro de lo que me dices, lee mas abajo.
cdvazquez escribió: - De hecho... todo correcto hasta llegar a la 65334 y de ahí hasta el final con errores.
¿Como pueden estar bien las direciones de la 65400 a la 64416 y mal desde la 65334 hasta la 65536?, se supone que la 65400 esta despues de la 65334, ¿no?, vamos que algo no me cuadra, jajajajaaja...

Bien mirando los resultados que me das, voy a ver si soy capaz de deducir algo, de momento todo parece indicar que son los multiplexores de la memroia alta, pero aun no te lo puedo asegurar, ya que podria ser tambien algun chip de memoria, dime una cosa,
¿la memoria es toda igual?, es decir, los chips de memoria alta, son todos iguales, misma marca, velocidad, etc...¿o hay alguno cambiado?.
Asi aventurandome un poco, yo diria que tienes mal IC25 un 74LS157, y no descarto que tambien este mal IC26, pero de momento centremonos en IC25.
No me hago responsable de mis post pues estan escritos bajo la influencia del alcohol y drogas psicotropicas, por la esquizofrenia paranoide.
(C) 1982-2024, 42 años de ZX Spectrum.
http://www.va-de-retro.com/ un foro "diferente".

Mi juego, que puedes descargar desde aqui
Avatar de Usuario
tacha Uruguay
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3139
Registrado: 04 Abr 2013, 20:22
Ubicación: Montevideo, Uruguay
Has thanked: 44 times
Been thanked: 30 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por tacha »

flopping escribió:
cdvazquez escribió: - Prueba que me pidió Flopping: 32800 hasta la 32816 -> Todo correcto
- Otra más que me comentó: 65400 hasta la 65416 -> Todo correcto
Vale, ¿estas seguro de lo que me dices, lee mas abajo.
cdvazquez escribió: - De hecho... todo correcto hasta llegar a la 65334 y de ahí hasta el final con errores.
¿Como pueden estar bien las direciones de la 65400 a la 64416 y mal desde la 65334 hasta la 65536?, se supone que la 65400 esta despues de la 65334, ¿no?, vamos que algo no me cuadra, jajajajaaja...

Bien mirando los resultados que me das, voy a ver si soy capaz de deducir algo, de momento todo parece indicar que son los multiplexores de la memroia alta, pero aun no te lo puedo asegurar, ya que podria ser tambien algun chip de memoria, dime una cosa,
¿la memoria es toda igual?, es decir, los chips de memoria lata, son todos iguales, misma marca, velocidad, etc...¿o hay alguno cambiado?.
Asi aventurandome un poco, yo diria que tienes mal IC25 un 74LS157, y no descarto que tambien este mal IC26, pero de momento centremonos en IC25.
ZAS!! jopta!! eso mismo me pasaba en la +2 gris que nunca he terminado de reparar... sigo atento el hilo :-*
66 6C 6F 70 70 69 6E 67 20 6D 61 73 63 61 20 50 30 6C 6C 34 / 6D 61 73 20 63 6F 74 69 6C 6C 61 20 73 65 72 E1 73 20 74 75 20 49 7A 61 72 6F 20 3A 70
Avatar de Usuario
cdvazquez
Aspirante a demonio
Aspirante a demonio
Mensajes: 366
Registrado: 09 Jul 2014, 00:50
Been thanked: 8 times

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por cdvazquez »

Hola de nuevo,

Tienes toda la razón, Flopping... estoy siendo poco preciso y he presupuesto cosas... Hice un pequeño programa en BASIC escribiendo 0 y 255 con un bucle FOR y que imprime por pantalla si hay algún error (si no, no imprime nada), a partir de ahí:

- Utilizando los rangos que me indicaste, no hay errores.
- A partir de 65334 empiezan a aparecer errores contínuamente (una página tras otra... con el "scroll?")

En esta ocasión se reseteó pero otras veces salían más páginas... pero obviamente no las vi todas... está claro que el problema no es hasta el final (tu rango es posterior)... pero ayer ya era tarde y estaba un poco apirolado ya... jajajaja.

Gracias por la indicación, a ver si tengo algún chip de esos o lo puedo sacar de otra placa para probar.

En cualquier caso, ¿nos podrías explicar como funciona lo de los multiplexores y como intervienen los diferentes chips en cada zona de memoria? ... lo de arreglarlo está estupendo pero me gusta entender el por qué...

Gracias por la ayuda
Avatar de Usuario
flopping
Fundador
Fundador
Mensajes: 9971
Registrado: 29 Mar 2013, 15:26
Ubicación: Valencia
Been thanked: 122 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por flopping »

Ah vale, entonces no me engañes jodio, jajajajaaja.....no es lo mismo que fallen todas las posisiciones a partir de una en concreto a que fallen unas determinadas, me gustaria saber por ejemplo que direcciones fallan y cuales no, ya que para hacer una explicacion adecuada, necesito ese dato, de todas formas, no soy el unico de este foro que puede darte explicaciones, es mas, seguro que alguien controla mejor que yo el tema del spectrm y sabe mas, pero bueno, yo intentare explicar lo poco que se, para que asi aprendamos todos un poco mas, de momento como te digo, cambia IC25, puedes hacer una cosa, si no tienes a mano un 74LS157, cambia o permuta IC25 por IC26, de esta forma, sabremos si el problema se traslada a otras posiciones de memoria o sigue en las mismas, si cambia, es que uno de esos integrados esta mal, como te digo de momento me parece que es IC25, si no cambia nada y el problema sigue en las mismas direciones, entonces esos IC´s no son los causantes del mal, a no ser que esten los dos mal y de la misma forma, algo casi casi imposible, jajajaja..
Bueno, pues eso, de momento ponzocalos a los integrados que vayas sacando y asi sera mas facil su cambio y podremos hacer pruebas mas facilmente, ya nos cuentas a ver como queda el tema, salu2.
No me hago responsable de mis post pues estan escritos bajo la influencia del alcohol y drogas psicotropicas, por la esquizofrenia paranoide.
(C) 1982-2024, 42 años de ZX Spectrum.
http://www.va-de-retro.com/ un foro "diferente".

Mi juego, que puedes descargar desde aqui
Avatar de Usuario
tacha Uruguay
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3139
Registrado: 04 Abr 2013, 20:22
Ubicación: Montevideo, Uruguay
Has thanked: 44 times
Been thanked: 30 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por tacha »

a ver... me voy a citar yo mismo en un hilo de shikitin, donde explico que hago los mismos pokes y en vez de saltarme el valor que poketeo, salta cualquier otro:

tacha escribió: 3-He salvado bloques de 128 bytes desde la direccion 27400 a la 65535 y me los ha devuelto ok. Cabe aclarar que he encontrado unos bytes "sucios" antes de USR "a", al parecer son una parte del sistema operativo de la +2gris y +2a/b?? acabo de corroborar en el emulador FUSE y esta parte de la memoria esta igual. pueden probar en un emulador en modo +2 un POKE 65361,2 o POKE 65361,x ... siempre hay algo nuevo para aprender ;) .
¿que hay en esta zona de memoria? O_O
66 6C 6F 70 70 69 6E 67 20 6D 61 73 63 61 20 50 30 6C 6C 34 / 6D 61 73 20 63 6F 74 69 6C 6C 61 20 73 65 72 E1 73 20 74 75 20 49 7A 61 72 6F 20 3A 70
Avatar de Usuario
flopping
Fundador
Fundador
Mensajes: 9971
Registrado: 29 Mar 2013, 15:26
Ubicación: Valencia
Been thanked: 122 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por flopping »

tacha escribió:a ver... me voy a citar yo mismo en un hilo de shikitin, donde explico que hago los mismos pokes y en vez de saltarme el valor que poketeo, salta cualquier otro:

tacha escribió: 3-He salvado bloques de 128 bytes desde la direccion 27400 a la 65535 y me los ha devuelto ok. Cabe aclarar que he encontrado unos bytes "sucios" antes de USR "a", al parecer son una parte del sistema operativo de la +2gris y +2a/b?? acabo de corroborar en el emulador FUSE y esta parte de la memoria esta igual. pueden probar en un emulador en modo +2 un POKE 65361,2 o POKE 65361,x ... siempre hay algo nuevo para aprender ;) .
¿que hay en esta zona de memoria? O_O
Esto quiza te lo podria explicar alguien mas dado en este tema, pero creo que tiene que ver con o siguiente, cuando tu tienes un spectrum de 16K, que en realidad son 32K, 16K de Rom y 16K de Ram, cuyas direcciones van de la 0 a la 32768, y en un spectrum de 64k, aunque le decimos de 48K, ademas de lo antes dicho, tenemos otro bloque de 32k de ram, de la 32768 a la 65536, bien, esto esta claro, y aunque creamos que la memoria ram debe de estar vacia y dispuesta para nuesrtro uso, eso no es asi, ya que existen una cosa, que se llaman variables del sistema, donde se guardan cosas como la autorepeticion de las teclas y cosas asi, que intervienen en el sistema y que se guardan en determinadas posiciones de memoria, que en un spectrum de 16K estan en un sitio y en uno de 48K, puede estar en el mismo sitio o quiza al detectar memoria, se trasladen a otras posiciones, esto ultimo no lo tengo muy claro, ya que creo que no es asi, pero es posible que al tener 48K, halla ciertas posiciones de memoria, que no deban de estra vacias, ya que se guardan ciertas cosas alli, como las variables que ya he conmentado o cosas necesarias para la deteccion de la memoria y demas, como os digo, yo no soy ningun experto en esto, quiza un programador lo tenga mas claro y en el manual del spectrum pone algo al rerspecto, esto me lo lei hace mas de 30 años y como entendereis, ya no lo recuero con precision, pero vamos, que no toda la memoria Ram esta libre para nuestro uso, ni vacia tampoco, salu2.
No me hago responsable de mis post pues estan escritos bajo la influencia del alcohol y drogas psicotropicas, por la esquizofrenia paranoide.
(C) 1982-2024, 42 años de ZX Spectrum.
http://www.va-de-retro.com/ un foro "diferente".

Mi juego, que puedes descargar desde aqui
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8152
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 101 times

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por wilco2009 »

Vamos a ver si podemos probar una teoría que se me ha ocurrido.

En principio, la memoria alta no debería cambiar su valor así porque sí, a no ser que tuviera los chips de RAM mal, pero la memoria baja sí, ya que allí escribe el sistema operativo.
Supongamos que tenemos los chips de RAM bien, entonces ¿qué puede estar ocurriendo?. Pues lo que se me ha ocurrido es que quizás estamos accediendo a la memoria alta y sin embargo el sistema nos devuelve valores de la memoria baja.

Vamos a hacer una prueba. Escribamos el siguiente programa:

Código: Seleccionar todo

10 FOR N = 16384 TO 32767
20 POKE N+16384,0
30 IF PEEK(N) <> 0 THEN GOTO 100
40 POKE N+16384,255
50 IF PEEK(N) <> 255 THEN GOTO 100
60 PRINT N; " = "; N+16384
100 NEXT N
A ver si imprime algo este programa.
"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
javu61 !Sinclair QL
Fundador
Fundador
Mensajes: 2175
Registrado: 30 Mar 2013, 11:58
Ubicación: Valencia
Been thanked: 76 times
Contactar:

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por javu61 »

Pues debe imprimir siempre, ya que la memoria debe estar a cero y si no hay fallos el peek retornará un cero, por tanto antes deberías grabar un valor en la memoria alta diferente para a 00h o FFh
Larga vida y prosperidad \\//_
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8152
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 101 times

Re: Problema de memoria extraño en ISSUE 3B

Mensaje por wilco2009 »

Cierto, aunque lo que hay que hacer es modificar la memoria baja, no la alta, y como es algo delicado voy a empezar desde el final hacia atrás y modificaré solo un valor al mismo tiempo, devolviendo el mismo valor que había antes de modificar el siguiente.

Código: Seleccionar todo

10 FOR N = 32767 TO 16384 STEP -1
15 A = PEEK(N)
17 POKE N, 255
20 POKE N+16384,0
30 IF PEEK(N) <> 0 THEN GOTO 100
40 POKE N+16384,255
50 IF PEEK(N) <> 255 THEN GOTO 100
60 PRINT N; " = "; N+16384
100 POKE N,A
110 NEXT N
"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”