O computador parecia estar travado. Era difícil de se ver, pois a imagem não estabilizava na TV e frequentemente ficava apagada (tela preta). Em testes com Diagnostic Board, não passava nem do primeiro teste, isto é, a CPU nem estava rodando a contento. Neste ponto eu sabia que o Z80 (e a ULA) estava funcionando, pois eu o tinha testado em um outro TK90X.
O clock de 3,58 MHz deveria estar funcionando, caso contrário a ULA não geraria imagem na TV. Medi a tensão no pino RESET do Z80, mas estava próximo de 5 V, isto é, estado lógico alto, portanto a CPU não deveria estar travada por estar sempre em reset. Verifiquei a presença do clock de 14 MHz, 3,58 MHz e as interrupções, além de atividades em vários pontos da placa, portanto o sistema não estava "congelado" (como eu consegui verificar isto sem osciloscópio ou frequencímetro? assunto para futura postagem!). Removi todas as memórias RAM e ROM (pois poderiam estar "contaminando" os barramentos), mas nada acontecia. Fiquei encafifado por um tempo.
A solução veio de uma forma inesperada. Em algumas ilhas e trilhas ao redor do circuito integrado IC10 (74LS365) havia respingado gotículas de solda durante a dessolda. Na pressa, acabei não limpando a sujeira e aparentemente algumas linhas de barramento de dados ficaram em curto. O Z80, apesar de funcional, não conseguia rodar nenhum programa, pois não conseguia acessar os dados das memórias de forma correta. A ULA não tem problema, pois estava protegida pela barreira de resistores inventado por Sir Clive Sinclair.
Quarta lição: "limpe sempre a sujeira antes de tentar qualquer outra coisa".
Removida toda sujeira com um ferro de soldar quente, o computador demonstrou poder rodar. Nas vezes que se dava para ver imagem na TV, aparecia o familiar logotipo do TK90X. O Diagnostic Board aprovou em todos os testes.
Agora só falta resolver o problema do vídeo. Espero voltar com boas novas em breve.
Atualização: parte 3 disponível.
O clock de 3,58 MHz deveria estar funcionando, caso contrário a ULA não geraria imagem na TV. Medi a tensão no pino RESET do Z80, mas estava próximo de 5 V, isto é, estado lógico alto, portanto a CPU não deveria estar travada por estar sempre em reset. Verifiquei a presença do clock de 14 MHz, 3,58 MHz e as interrupções, além de atividades em vários pontos da placa, portanto o sistema não estava "congelado" (como eu consegui verificar isto sem osciloscópio ou frequencímetro? assunto para futura postagem!). Removi todas as memórias RAM e ROM (pois poderiam estar "contaminando" os barramentos), mas nada acontecia. Fiquei encafifado por um tempo.
A solução veio de uma forma inesperada. Em algumas ilhas e trilhas ao redor do circuito integrado IC10 (74LS365) havia respingado gotículas de solda durante a dessolda. Na pressa, acabei não limpando a sujeira e aparentemente algumas linhas de barramento de dados ficaram em curto. O Z80, apesar de funcional, não conseguia rodar nenhum programa, pois não conseguia acessar os dados das memórias de forma correta. A ULA não tem problema, pois estava protegida pela barreira de resistores inventado por Sir Clive Sinclair.
Quarta lição: "limpe sempre a sujeira antes de tentar qualquer outra coisa".
Removida toda sujeira com um ferro de soldar quente, o computador demonstrou poder rodar. Nas vezes que se dava para ver imagem na TV, aparecia o familiar logotipo do TK90X. O Diagnostic Board aprovou em todos os testes.
Agora só falta resolver o problema do vídeo. Espero voltar com boas novas em breve.
Atualização: parte 3 disponível.
Nenhum comentário:
Postar um comentário
Seu comentário é bem vindo, mas peço que use este espaço adequadamente.