Cars · Wiring

Mcu Readers

Todos os leitores de MCU descritos aqui tiram partido de uma falha de design dos MCUs OKI (e a falha de design está presente em todos os MCUs que vimos até à data).

Avançado 2

Adaptado de pgmfi.org wiki

Todos os leitores de MCU0 descritos aqui tiram partido de uma falha de design dos MCU0s OKI (e essa falha de design está presente em todos os MCU0s que vimos até à data). Os MCU0s podem utilizar tanto a ROM0 interna como a ROM0 externa para armazenamento da memória de programa, e um sinal GND ou +5V no _EA0 (EA prime - normalmente tem uma linha sobre o EA) é utilizado para controlar se é selecionada a memória de programa interna ou externa. *Os MCU0s OKI não fazem o Latch0 do estado do pino _EA0 no arranque - através de um truque engenhoso, a memória de código interna pode ser desmascarada após o MCU0 ter começado a executar código. Todos os dumpers de ROM0 que tiram partido desta falha funcionam assim:

  • Ligar manualmente um pino de I/O ao pino _EA0 do MCU0. Utilizar um resistor pull-up/pull-down se necessário.
  • Utilizar uma ROM0 que seja maior do que a ROM0 interna do MCU0. Garantir que todas as linhas de endereço estão ligadas conforme necessário.
  • Inicializar a porta série do MCU0 para comunicação com o PC
  • Saltar para cima da área de ROM0 mascarada (32k para 66207, 48k para 66507,...)
  • Inverter o estado do _EA0 usando o pino de I/O
  • Entrar num ciclo de atraso (delay loop) suficientemente longo para permitir que a ROM0 interna seja novamente mascarada na memória
  • Copiar o conteúdo da ROM0 para fora através da porta série

Existem vários designs que foram testados:

Um leitor para outros chips exigiria o ajuste do encapsulamento físico da placa e do código para a velocidade do relógio (clock speed) e tamanho da ROM0.

Aplica-se a

23 taxonomy links

Créditos e fonte

Fonte Adaptado de Mcu Readers em pgmfi.org wiki. Licenciado sob CC BY-NC-SA 1.0.