Bueno, pues ayer con calma estuve un buen rato otra vez con el Advantage. Los resultados raros del analizador que obtenía el día anterior me quedaron claros una vez me fui a cama: había indicado que muestreara en los flancos positivos de reloj y no en los negativos, en fin.
Ahora ya con eso correcto, volví a sacar el muestreo del bus de direcciones en tres partes, y hay cosas interesantes:
- La primera es que los chequeos de RAM principal siguen dando error de paridad. Aquí es problema es que compré 8 chips que tenían buena pinta, otros 10 o 12 de un alemán que parece que eran clones de Europa del Este y probablemente el que puse en el zócalo del chip de paridad, es uno de los malos.
- La segunda es que el chequeo de la memoria de video ya avanza mucho más. Está claro que ese flip-flop estaba malito, porque ahora escribe en la RAM de video y luego chequea bien desde 0x4FFF a 0x3FFF (aunque hay 32KBytes de memoria de video + auxiliar el chequeo solo se hace sobre los 20Kbytes más bajos, 4Kbytes de un banco, y 16 del otro). Curiosamente el primer byte que falla es el 0x3FFF, que debería ser el último de uno de los bloques de RAM. Esto indica que posiblemente hay un chip defectuoso en los primeros 16Kbytes de RAM de vídeo, ahora ... a saber cual.
- El caso es que las rutinas de video parece que vuelven bien (no he chequeado aún todo el listado), pero las tres primeras, cuando vuelven a la dirección que saca de la indirección sobre IY, hacen el retorno correcto y el programa sigue por donde iba. Esto es un poco sorprendente (al menos para mi) si pensamos que algún chip del primer banco de 16Kbytes de video está mal según el test de RAM, y es ahí donde guarda la dirección de retorno. Quien sabe...
- En la RAM de vídeo también encuentra errores de paridad. Entiendo que antes no le daba tiempo porque hacía una sola lectura y como no coincidía con el valor esperado, dejaba de leer.
- Con todo esto, se ve que la ROM intenta ir a una parte donde se debería mostrar un diagnóstico de error en pantalla. Esto supongo que es lo que llena la pantalla de rayas verticales. Esto lo explica el hecho de que la RAM de video está mal según el test.
- Ya no he seguido más allá. El PC se mete por zonas que todavía no he analizado en condiciones, pero supongo que una vez mostrado el diagnóstico de error posiblemente se quede "parado".
Creo que lo siguiente será ir a por esa memoria de video. Ya os contaré.