Google Custom Search

Esquema Pitfall II (era: Super-Duper-Charger)

De: Mauricio Tadeu Alegretti <mauricio_at_a...>
Data: Fri, 23 Mar 2001 11:53:41 -0000

Edu e eletrônicos da Canal3,

> fica na dúvida, mas quanto a isto o texto é categórico... então,
meu
> palpite é que, de alguma forma, a Activision "aliviava" um pouco a
> carga, jogando uma parte da geração da música para o chip... agora,
> como ela fazia isso, considerando-se que não existia uma ligação de
> som direta e que os dados obrigatoriamente tinham que passar pelo
> Stella.... mistérios, mistérios... ;-)

Eu estive "matutando" sobre o problema do Pitfall II... e me veio uma
hipótese, gostaria de saber com vocês se eletrônicamente é possível.

Sabemos, pelo texto, que a Activision dispunha de uma versão especial
do SuperChip no Pitfall II. Bom, no texto também diz que esta versão
era apenas para leitura, então porque cargas d'água a Act iria querer
utilizar uma versão do SC? A única alternativa viável seria para que
ela pudesse utilizar o automapeamento, o que permitira que ela acessa
os primeiros 512 bytes do cartucho SEM a necessidade de fazer
bankswitch...

O esquema de geração de sons do Stella é ininterrupto; quer dizer,
você seta um registrador nele indicando que quer iniciar uma geração
de áudio, indica o endereço de memória onde está a informação de
frequência e amplitude do som a ser gerado, e ele vai gerar aquela
onda até você zerar o registrador. Daí que vem minha pergunta: é
possível que o chip fizesse com que aqueles 512 bytes iniciais
fossem "mutáveis", talvez um endereço virtual ou cópia de outros
dados contidos mais pra frente no chip, onde não seria possível o
endereçamento do programa? Porque se sim, pode ser que o Crane tenha
conseguido fazer o seguinte:

1. Setado o registrador de áudio do Stella como ligado, e endereçando
os dados da onda para um endereço contido naqueles 512 bytes iniciais
do SuperChip, e deixado o mesmo ligado por tempo indefinido;
2. O próprio chip alterava os dados contidos naquele endereço de
memória (ou trocava o ponteiro virtual para uma área mais avançada de
dados);
3. Com isto, o Stella conseguiria gerar ininterruptamente sons
diferentes, o que soluciona um grande mistério do Pitfall II, que é a
geração da música ser em realtime mas sem impactar na velocidade do
jogo, já que não estariamos gastando ciclos do 6507 para gerar o
áudio (apenas o ciclo inicial para setar o registrador do Stella).
4. Isto explica também o gerador de números randômicos, pelo mesmo
método: o chip variaria a área de memória ininterruptamente, fazendo
com que cada leitura da mesma resultasse em um valor diferente.
5. Isto também explicaria a dificuldade de se emular o Pitfall II, já
que teria que ser emulada também esta "troca" de memória, no timing
correto do SuperChip...

É possível, companheiros? Será que é esta a solução do mistério?

Abração!
Recebida em Fri 23 Mar 2001 - 03:53:46 BRT

This archive was generated by hypermail 2.2.0.