sexta-feira, 22 de março de 2013

Debugando a Explorer

Comentei ontem sobre um segundo bug presente nas Explorer III e IV e já surgiu uma solução.


Foi Danjovic quem trouxe esta ideia para consertar as referidas versões da Explorer: 

Eu não estava acompanhando este tópico, mas pelo que estou vendo, para resolver o problema na Explorer III basta ligar o sinal /M1 no pino 3 do 74LS138.
Dessa maneira, quando o Z80 entrar na IM2, o sinal /M1 vai estar em nível baixo e o PSG não vai ser acionado.
Já no acesso de I/O normal, M1 vai estar em nível alto e a decodificação vai acontecer naturalmente.

De fato, ao invés de explicitamente usar /RD, pode-se usar /M1 para inferir se o Z80 está lendo uma porta de entrada, ao invés de estar requisitando aos periféricos um endereço durante uma interrupção. A vantagem deste procedimento é a simplicidade, pois se fosse converter a decodificação para a lógica adotada na Melodik, seria necessário mexer em mais pinos do 74LS138.

Entretanto tudo isso ainda é teoria, é necessário alguém para testar e relatar os resultados. 

Ontem, conversando com Clóvis Friolani, descobrimos que sua Explorer é o modelo II. Examinando o esquema elétrico contido em seu manual, verifiquei que o sinal /RD é empregado para arbitrar se a porta 65533 está sendo lida ou escrita, ao invés de /WR. Isto significa que a Explorer II não deve apresentar nenhum dos dois bugs encontrados nos modelos mais recentes. De fato, testando Alien Demo e Sokoban, ele pôde comprovar que não há incompatibilidades.

Um comentário:

  1. Ola Flavio, se o bug do sokoban foi o reset, recomendo o teste de todas interfaces com o demo newwave, afinal foi com ele que a interface explorer IV causou travamento da tela do TK duas vezes, apresentando com ela original ate erro de memoria. e travamento tambem com com a modificacao sugerida no site do victor, e so funcionou com o fio jumpeado removido. Assim que tiverem um parecer de qual interface roda tudo sem bug , sugiro que se viavel se disponibilize uma explicação menos tecnica de quais ligacoes entre o 74ls138 e 74ls00 devem ser feitas para que nos "leigos" possamos faze-las nas explorer IV .

    abraço
    Wesley

    ResponderExcluir

Seu comentário é bem vindo, mas peço que use este espaço adequadamente.