Um botão de Pausa para o Atari 2600



Atualizado em 01 de junho de 2015

Para quem não tem muita habilidade para fazer a sua própria placa de pausa, fiz uma solução quase plug and play e que ao mesmo tempo adiciona saídas de video composto, svideo e audio em estéreo opcional (fechando o jumper fica mono, como no original) no Atari 2600. Saca-se o TIA, pluga a minha plaquinha, volta com o TIA por cima dela e está pronto. Logicamente quem tem o TIA soldado vai precisar soquetá-lo e a única outra alteração é trocar o cristal por um NTSC (que já vou incluir no pacote), se for o caso.

A placa mede apenas 6,5 cm por 3,5cm e acredito que deva ser possivel encaixar em todos os clones, mas eu mesmo só tinha a mão por aqui o Polyvox nacional (placa face simples) e um outro com placa americana e ambos encaixaram perfeitamente sem problemas.

Quem ainda nao viu, veja as imagens e uma sugestão para a instalação dos conectores.

Nas fotos eu utilizei um cabo comprado no ML (não vai ser incluso no pacote) e ao contrário do que possa parecer, ele é de placas de video novas, as que tem TV OUT pelo conector HD15. Na verdade cada um poderá instalar a saída conforme desejar, até mesmo soldando cabos direto na plaquinha.

Cada placa vai sair a R$65 + envio, montada e testada e acompanhada do cristal NTSC, porém cabos não inclusos, conforme dito.

Fotos da placa à venda neste link.

Quem tiver interesse, me envie um e-mail no victor.trucco no gmail ponto com



Em 20 de Fevereiro de 2010

Click here to English version

Um assunto bastante recorrente em alguns fóruns que participo sempre foi "Como dar pausa no Atari?". Numa rápida busca, existem tópicos criados em 2005! Pelo menos 5 anos em busca de um método para pausar o jogo numa eventualidade para continuar em seguida. Eu apesar de ter lido os tópicos com curiosidade e até ter visto sugestões mirabolantes, não dei muita bola, por não conhecer muito do assunto.

Coincidentemente, algum tempo atras um colega de uma das listas que participo me pediu para colocar uma saida A/V em um Onyx Jr. Como ele é o única versão de Atari com pausa, não pude deixar de dar uma fuçada para ver como funcionava.

A primeira coisa que notei é que o processador é um 6502 e não o tradicional 6507. O 07 é uma versão, digamos, "econômica" do 02. Apesar de serem compatíveis no software o 07 tem vários sinais a menos, portanto menos pinos.

Com algumas observações e medições, verifiquei que quando a chave de pausa do Onyx Jr. é acionada, acontece duas coisas:

1 - é aterrado o sinal de Luminancia e o Audio. Isso serve pra deixar a tela preta e sem som, porque senão apareceria aquelas imagens de padrões coloridos, além de sons estranhos, como um cartucho mal conectado. Isso acontece porque a imagem do jogo não pode ser gerada pela falta do processamento.

2 - Num CI de portas lógicas NAND (74LS00), uma das portas é aterrada e combinado com o sinal Clock 1 out do processador aterra o pino RDY, o que faz o processador entrar em pausa.

Por que tem que combinar com o Clock 1 out?
Segundo a explicação superficial no datasheet do 6502, o processador não pode ser parado num "ciclo de escrita". Provavelmente isso se refere a algumas instruções do processador. Continuando a citar o datasheet, o estado do RDY deve ser mudado quando o Clock 1 out estiver em nivel baixo. Pelo que entendo, ele só abaixa o Clock 1 out quando está fora do "ciclo de escrita", indicando o momento exato que o processador pode ser parado sem prejudicar o software rodando.

Bom, dai fica a inevitável pergunta: Funciona num Atari comum?
Não exatamente, porque o 6507 processador dos Ataris "normais" entre outras coisas, não tem o Clock 1 out. Então ficaria impossível determinar o momento certo para a pausa, segundo o esquema do Onyx Jr.

Tempos depois, olhando a documentação do Atari, vi que o pino 3 (RDY) da CPU era ligado diretamente ao pino 3 de mesmo nome na TIA.


A principio pensei tratar-se de algo tipo um reset, mas com a ponta lógica vi que o sinal era pulsante, ou seja, a TIA para o processador de tempos em tempos (várias vezes por segundo). Isso muita gente já devia saber, mas eu com meu humilde conhecimento superficial do Atari ainda não sabia até aquele momento. Bom, a questão era... A TIA sabe quando a CPU pode ser pausada, então porque não coincidir o sinal da pausa "externa" com a pausa da TIA?

Na busca da resposta, montei um circuitinho na protoboard que quando acionado um botão de pausa, antes do processador recebe-lo, esperava-se o sinal de RDY da TIA, garantindo a hora certa de acioná-lo. Para alegria de quem postou as mensagens inicias em 2005 ou para quem esperou 30 anos para poder dar pausa num jogo de Atari, FUNCIONA 100%!


Claro que quando digo 100%, não testei todos os jogos que existem, mas todos os que testei, sem exceção, foram pausados e voltaram da pausa normalmente. Nos testes, cheguei a deixar o River Raid pausado por 3 horas! Outros que testei foram o Enduro (mais de 1 hora pausado), Combat, Pitfall, Basket, Krull, HERO e Fishing Derby (mais de 15 minutos). Nestes mesmo jogos testei pausas curtas (1 minuto ou menos) e até mesmo várias pausas por segundo, ligando e desligando a chave rapidamente. Em todos os casos, os jogos entraram em pausa e voltaram sem nenhum problema. Não é possivel garantir que em nenhum momento, algum jogo, algum dia, não irá travar, principalmente pela "fragilidade" da coisa. Não podemos esquecer que existem altas-frequencias envolvidas e que qualquer "ruído" pode levar o processamento pro espaço, travando a maquina, mas por enquanto nos meus testes o funcionamento é perfeito, sem detalhes. Faço ainda a observação também que todos os meus testes foram feitos num único console, um Atari Polyvox com fonte interna. Não acredito que seja diferente da maioria dos outros Ataris e clones, já que os componentes são praticamente os mesmos.

Bom, depois da parte téoria, é hora de botar a mão na massa. Todos os componentes são facilmente encontrados em qualquer loja de eletrônica. A lista de peças é a seguinte:

1 CI 74LS00 (Não consegui fazer funcionar com o 74HC00, portanto compre o LS que é até mais "comum")
3 diodos 1N4148
2 resistores 1K 1/8w (marrom, preto, vermelho)
1 resistor 1K5 1/8w (marrom, verde, vermelho)
1 capacitor cerâmico 100nF (normalmente vem escrito 104 na peça)
1 chave (pode ser alavanca ou deslizante)
1 placa de circuito impresso (veja a seguir)
fio fino para as ligações

Eu mesmo desenhei uma plaquinha pro circuito que pode ser baixada aqui. Ela já está pronta para a impressão e devido ao tamanho reduzido pode ser feita facilmente pelo método de "transferência térmica". Para mais informações, existem inúmeros tutorias na internet. Faça uma rápida busca no Google e no Youtube que aparece muito material para referência. Por favor não reparem no design medíocre da placa, esta foi a segunda que fiz na minha vida. Espero que um dia eu ainda consegui fazer placas como as dos colegas da listas que participo. Eu chego lá. ;)


Na imagem acima temos a disposição das peças na placa. Veja que os diodos e o CI tem posição certa para serem montados. Note que os diodos tem um "anel" próximo a um dos termimais e o CI tem um semi-circulo em um dos lados.

Abaixo a minha placa montada. Ainda não fiz o corte final da placa porque não decidi como vou prender dentro do Atari.


No espaço marcado como "SW" lá no desenho das peças, você deve soldar dois fios indo até uma chave liga-desliga. Essa será justamente a nossa chave de pausa. Você pode utilizar uma chave de alavanca ou uma deslizante (H-H). Uma outra boa idéia é utilizar a chave de mudança de canal 2-3 caso você esteja usando uma saida de video composto. Desse jeito você não faz nenhuma alteração externa no console conservando sua originalidade e ainda dá uma função pra chave que fica sem uso depois que se mata a saida de RF.


Temos que fazer uma pequena alteração no Atari. Temos que separar o pino RDY da CPU do RDY da TIA e ainda retirar o resistor de 4K7 que está fazendo o pull-up dessa linha.

Começaremos retirando o resistor. No Atari Polyvox ele é o R19, bem no centro da placa. Normalmente ele estaria atras da plaquinha de transcodificação PAL-M, mas nesse eu tirei para ficar em NTSC. (Instruções completas no meu outro artigo).


Para interromper a ligação entre os pinos, vamos retirar o jumper W16, bem do lado direto do 6507.


Lembrando novamente que as fotos acima são do Polyvox. Se você está fazendo o mod em outro Atari ou clone, acompanhe a trilha que vai do pino 3 da CPU ao pino 3 da TIA. No meio do caminho vai ter o resistor e se não houver o jumper, corte a trilha em qualquer ponto com um estilete (faca Olfa). Para não ter dúvida no corte, meça a continuidade com um multimetro.

Agora basta soldar a placa da pausa. Veja na imagem abaixo, o conector J1. Temos que soldar a alimentação e os dois sinais RDY. O jeito mais facil é soldar 4 fios nesses espaços, para ligar na placa mãe do Atari. O 5V e o Terra podem ser conseguidos diretamente no CI 7805, o regulador montado num dissipador de calor. O terra é o pino do meio e o 5V o mais a direita. Na foto, veja que tem um fio amarelo já soldado no 5V, referente a saida de video. (Veja instruções completas no meu outro artigo).


Cuidado para não inverter os fios centrais, que vão nos pinos 3 dos dois CIs. Se ligados invertidos o Atari não funciona.

ATENÇÃO: Não exagere no tamanho dos fios. Eles devem ser o mais curto possivel para não gerar "ruido" no sinal de controle.

O funcionamento é bem básico e não tem nenhum mistério. No meio de algum jogo basta acionar a chave de pausa e pronto. Note que a imagem ficará com alguns padrões coloridos, mas quando vc desligar a pausa, o jogo volta normalmente.

Peço aos amigos para se encontrarem algum jogo que não de pausa de jeito nenhum, me informe para que eu possa estudar as causas.



Pausa Reloaded



Atualizado em 23 de Março de 2011

Desde que desenvolvi a primeira versão do circuito de pausa o sucesso foi muito grande e o circuito foi copiado e instalado em vários Atari pelo mundo afora. Alguns simplesmente copiaram, outros mudaram a placa e revendem, como o pessoal do Atari Age, mas um vendendor de um site de leilão chamou a atenção de vários usuários por ter adicionado a funcionalidade de "pausa silenciosa". Como a modificação nunca foi divulgada por ele, então recebo inúmeros pedidos de revisão no meu circuito original. Hoje publico então o "Pausa Reloaded", que é a versão nova da pausa que corta o vídeo e o áudio, além de ter um led indicando o acionamento.


Como pode ser visto, o circuito é praticamente o original, sendo que as mudanças estão marcadas nos dois quadros azuis.

Na parte de cima do esquema, os diodos irão aterrar os sinais de áudio e vídeo, fazendo uma tela preta e o corte do som. A ligação do diodo de vídeo será no ponto onde é gerado o sinal de video composto. Se você instalou o A/V Reloaded, é bem fácil de identificar. Seria a base transistor, o terminal central, mas mesmo com RF, é possível usar a pausa silenciosa, bastando se referir aos mesmos pontos de ligações informados lá no artigo do A/V Reloaded. No caso da ligação do áudio, é bem fácil também. Só ligar no pino 12 do TIA ou antes do capacitor de audio do A/V. Note que coloquei um diodo extra para quem está usando saída estéreo, então nesse caso um dos diodos vai no pino 12 do TIA e o outro no pino 13. Não esqueça que os diodos e o led são polarizados, então preste atenção no lado certo para a ligação destes componentes ao circuito original.

O mod é bem fácil de ser "atualizado" até pelos mais inexperientes, então pegue seu ferro de solda e boa diversão.

Dúvidas ou sugestões, utilize a espaço abaixo para comentários.


Voltar - Home


Comente



COMENTÁRIOS DESABILITADOS NO MOMENTO! RETORNAM EM BREVE
É expressamente proibido a reprodução total ou parcial deste texto sem a minha devida autorização por escrito.