Mostrando postagens com marcador Pistola. Mostrar todas as postagens
Mostrando postagens com marcador Pistola. Mostrar todas as postagens

sexta-feira, 20 de maio de 2011

Grandes controles, grandes nostalgias

O que somos capazes de fazer em nome daquilo que marcou época? Muitas pessoas gostam de mostrar para todos, coisas que marcaram suas vidas. Normalmente alguém cria uma camiseta, ou um boné... Tem alguns que colecionam bonecos de seus super-heróis. Outros possuem posters... A forma varia bastante.
Mas parece que os fãs do velho Nintendinho 8 bits encontraram uma forma muito curiosa de relembrar os velhos tempos. A moda agora é representar sempre que possível, o controle do Nintendo. Neste ponto, vale de tudo. Por exemplo, há um site que vende sapatos com a imagem do controle do NES.


Mas o mais comum mesmo é construir mesas com o formato do controle. Entre estas, podemos muito bem destacar esta que foi construida por alguns franceses, e anunciada no seu blog:


O legal da mesa é que ela realmente pode ser conectada a seu NES, para se jogar... Uma idéia muito legal, que alguns estudantes da Holanda resolveram adotar... Sua réplica do controle é tão grande, mas tão grande, que você tem que usá-lo subindo nele, e pisando nos botões (imagens do portal G1):



Muito bem feito o controle, por sinal...

Para dizer a verdade, o próprio esquemático do controle do NES não é algo muito complicado de se fazer. Procurando mais sobre o esquema elétrico deste controle, me deparei novamente com o site Zero-Soft, que me ajudou na procura do esquemático da pistola Zapper. Ele tem um projeto interessante para se usar o controle do NES no seu computador (quem sabe agora os holandeses podem jogar no computador também), e como parte do projeto, ele apresenta o esquemático do controle:


Não é um esquema complicado de fato. O CI CD4021 é um conversor paralelo-serial, e é usado para converter o estado dos botões em um sinal serial que será lido pelo console. Pelo esquemático podemos perceber que os botões são ativo-baixo, e a ordem dos dados é do MSB para o LSB, ou seja: A, B, Start, Select, Para cima, Para Baixo, Esquerda, Direita. O escaneamento dos estados do controle é feito 60 vezes por segundo (período de 16,6ms), e os dados são enviados para um registrador mapeado em memória. Os endereços dos registradores para o NES são 4016h para o primeiro controle e 4017h para o segundo.
Como a leitura é feita? Bem, pelo que parece, cada registrador deste é de 8 bits. O bit 0 do registrador é o bit que mantém o dado lido. Toda vez que o jogo ler este registrador, ele obterá um novo dado. Abaixo está uma lista dos valores obtidos no bit 0 em cada vez que o registrador é lido:
1: A
2: B
3: Start
4: Select
5: Para cima
6: Para baixo
7: Esquerda
8: Direita
9: Ignorado
10: Ignorado
11: Ignorado
12: Ignorado
13: Ignorado
14: Ignorado
15: Ignorado
16: Ignorado
17: Assinatura
18: Assinatura
19: Assinatura
20: Assinatura
21: 0
22: 0
23: 0
24: 0
As leituras de 9 a 16 são ignoradas, a menos que o jogo suporte o uso de 4 controles. Neste caso, as leituras de 9 a 16 do registrador 4016h são relativas ao controle 3, enquanto que as mesmas leituras no registrador 4017h são relativas ao controle 4.
A Assinatura ajuda identificar o status do controle. Valores possíveis/conhecidos são:
0000 = Desconectado
0001 = Joypad (só 4016h)
0010 = Joypad (só 4017h)
Além do bit 0 nestes registradores, o bit 3 e 4 também são usados. São eles que monitoram o status da pistola Zapper, que comentamos em outro post. O bit 3, portanto, indica se um sprite foi detectado (ou seja, é a saída do nosso fotodiodo), nível lógico 1 para um sprite detectado. O bit 4 indica se o gatilho foi pressionado, quando este bit estiver em nível lógico 0.
Se observarmos este esquemático acima, e compararmos com o esquemático da pistola Zapper, perceberemos que a pistola usa justamente as vias no conector que são deixadas desconectadas para o controle.
Toda a lógica do controle do NES é bem simples, como vocês podem ver. Há controles mais sofisticados, como o do Playstation, que tentarei abordar em um futuro próximo.

Informações sobre o controle do NES foram obtidas do site Zophar.net.

sexta-feira, 25 de março de 2011

Como funcionam as pistolas para jogos de tiro?

Pistola Zapper
Algo que sempre me despertou a curiosidade foi como aquelas pistolas para jogos de tiro funcionam. Assim, eu decidi investigar isto melhor. Afinal de contas, não existe nenhum tipo de sensor em nossas televisões, para que elas identificassem onde o jogador estaria apontando sua pistola. Este tipo de periférico já existe há muito tempo, desde a época do Nintendo 8 bits.
Não demorei muito para achar. O site HowStuffWorks fez um bom trabalho de tanto explicar o funcionamento como disponibilizar a patente da invenção da Nintendo, a pistola Zapper. Realmente era algo muito simples de se fazer.
A pistola em si não emite nenhum tipo de sinal para a televisão. Na verdade, como vi em outro site, é a televisão que "dispara" algo na pistola: luz. É importante observar que estas pistolas funcionam em televisões de tubo de raios catódicos. O LCD não ajuda muito neste processo.
Em televisores antigos, havia um feixe de elétrons que era disparado em cada ponto da tela, para que este ponto fosse iluminado. Sendo a tela dividida em linhas e colunas, este feixe iniciaria com a linha de cima e terminaria pela linha de baixo.
A luz emitida por este feixe deveria então ser detectada por um fotodiodo, presente na ponta de nossa pistola. Mas, poderíamos nos perguntar, o fotodiodo detecta qualquer tipo de luminosidade, então como o NES sabia que ele estava apontando para o alvo, e não para qualquer outro lugar na tela?
Aí é que vem o pequeno truque... Quando a pessoa aperta o gatilho, o console verifica se há presença de luz no fotodiodo. Se houver, então a pistola está apontada para o televisor. Então o console rapidamente pinta toda tela de preto, mas deixa apenas o alvo branco. Isto é muito rápido, e nossos olhos não percebem muito bem (é o tempo de uma varredura completa na tela). Mas é o suficiente para que o fotodiodo detecte o sinal. Assim, se ele detectar luz, significa que o usuário estava apontando para o alvo. Se não detectou, ele não estava apontando.

Tudo isto era feita no jogo que era muito conhecido naquela época, o Duck Hunt. Eu não tinha o aparelho, mas tive a oportunidade de jogá-lo na casa de meu primo, que possui um aparelho que roda jogos do Nintendo 8 bits. É um jogo muito legal, e talvez nossos emuladores não consigam ainda nos dar o mesmo tipo de diversão que este jogo podia nos proporcionar no passado.

Parece que esta técnica usada pelo Nintendo 8 bits não é a mesma de outros fabricantes. Também, com a tecnologia patenteada, eles teriam que fazer algo diferente. Parece então que alguns fabricantes trabalham com os tempos de varredura. Quando o usuário aperta o gatilho, o console envia um sinal para o monitor preencher a tela com pontos brancos. Medindo-se o tempo gasto para que a pistola detecte luz, o console poderá saber para onde o jogador está apontando a pistola.
Bem, mas minha pesquisa não parou por aí... Resolvido a buscar algo mais aprofundado, fui checar se alguém possuía o esquemático da pistola Zapper. Eu mesmo possuo uma, e vi que é muito simples. Para minha surpresa, não só encontrei um esquemático, mas também encontrei um projeto para adaptar esta pistola aos nossos monitores de LCD, para podermos usá-la como mouse, ou como controle para emuladores. O esquemático eu coloco aqui, para que todos vejam como era simples seu funcionamento:

Esquemático da pistola Zapper
Bem, parece que há algumas diferenças deste esquemático para minha pistola. O fotodiodo que está presente em minha pistola é bem mais simples do que o apresentado no esquemático acima, possuindo apenas dois pinos. No entanto, me parece que o circuito é o mesmo. Há um filtro passa-faixas ajustado para 15KHz, que é a frequência de varredura para um monitor NTSC. O sinal é enviado então para o console via cabo.
Fico feliz de descobrir todas estas coisas. Como entusiasta dos video-games e da eletrônica, é sempre interessante ver como alguns problemas eram resolvidos pelos engenheiros daquela época.

Você também poderá gostar de