
Esta seção mostra como surgiu o primeiro videogame no
Brasil e a evolução deles, até os 16 bits. Viaje pelo mundo dos videogames
antigos, partindo pelo Telejogo da Philco, passando pelo Odyssey, Atari 2600,
Intellivision, Master System, Nintendo e chegando finalmente ao Mega Drive e
Super Nintendo.
Nesta página inicial, iremos abordar alguns temas importantes na
compreensão tecnológica que envolve os videogames.
Tópicos:
1- Bits ... o que significa 8, 16, 32 bits?
2- Clock.
3- Memória .
4- Resolução.
5- Cores totais x cores simultâneas.
6- Canais de som.
Umas das características associadas à qualidade de videogame está no
numero de bits dele. Mas o que vem a ser isto?
Dizer que um videogame é 8 bits, significa que seu PROCESSADOR é capaz
de processar 8 bits ao mesmo tempo, ou seja, processa informações de 8 em 8
bits.
Existe também o conceito de 8, 16 bits de memória. Isto significa que o
endereçamento da
memória é REPRESENTADO por conjuntos de 8 ou 16 bits. A memória total é dividida
em células de 8 bits (independente de ser 8, 16, 32 etc), onde o endereçamento é a localização de cada uma
delas. Se a representação for de 8 bits, podemos ter no máximo 256 células
de memória, conseqüentemente, 256*8 = 2048 bits de memória total. Se tivermos
16 bits, teremos 65536 células distintas, num total de 65536*8 = 524288 bits de
memória.
Comparativamente, a limitação de memória pelo endereçamento é como
se tivéssemos que numerar casas em uma rua, onde só fosse possível utilizar 2
algarismos para cada casa. Então, teríamos casas variando de 0 a 99,
totalizando 100 casas possíveis.
Um exemplo de bits de processador e memória é o computador
MSX. Ele processa 8 bits de cada vez, mas endereça uma memória de 16 bits de
tamanho. Portanto, o micro é de 8 bits.
Conteúdo
da Memória |
Endereço
em bits |
Endereço
em Hexa |
Endereço
em Decimal |
01010101 |
00000000 |
0000 |
0 |
11111111 |
00000001 |
0001 |
1 |
... |
... |
... |
... |
11011000 |
11111111 |
FFFF |
65535 |
Clock de um processador é o tempo que ele leva para processar uma micro
instrução. A velocidade do clock é imposta pelo circuito externo (placa),
porém não pode ser aumentado devido a limitação do processador a responder
corretamente dentro do tempo especificado. Além disto, o processador poderá
ser danificado à este clock mais elevado.
Dizer que o processador opera à 3,75 MHz significa dizer que ele
processa 3.750.000 micro instruções por segundo (uau!).
Muita gente pensa que uma instrução em linguagem de máquina
corresponde a um ciclo ou clock. Porém, cada instrução é composta de n micro
instruções. Micro instrução é cada passo
necessário a realização de uma instrução. Por exemplo, uma instrução em
assembly de soma (ADD A,B) consome 4 ciclos de clock. Isto implica dizer que
este processador realiza 3.750.000 / 4 operações de adição por segundo.
A memória de um computador é aonde o processador busca informações
para processar. Mas afinal o que é ROM, RAM, principal e secundária?
Existem duas operações possíveis que podem ser feitas em uma memória
de computador: ler dados e gravar dados. A memória ROM é como um livro. Foi
escrito uma vez e sua principal função é servir de consulta de dados, ou
seja, leitura. A memória RAM é como um quadro negro. Serve para ser escrito,
para ser consultado e quando acaba a aula, ele é apagado. Algumas memórias
RAMs armazenam dados mesmo quando desligadas, mas podem ser apagadas.
A memória principal do computador (ou videogame, pois o videogame é um
computador sem teclado!) é aonde o processador vai buscar informações para
processar. O registro IP (não tem nada a ver com o IP da internet) do
processador contém o endereço da próxima instrução a ser executada. Esta
memória é completamente limpa quando se desliga o console. A
memória secundária serve para armazenar dados, mesmo quando o console é
desligado.
A memória principal, quando o console é ligado, está vazia. Algum
programa deve estar na memória para que ele faça alguma coisa! Então, uma
memória secundária é chamada, onde os dados fundamentais para a operação
básica do console é carregado na memória. Se trata da BIOS.
Algum programa da BIOS então, procura por outras memórias secundárias,
como um cartucho de jogo, para que este seja carregado na memória principal e
então rodado.
Memória |
Tipo |
Principal |
RAM |
Cartucho |
ROM |
Bios |
ROM |
Disquete |
RAM |
Memory Card |
RAM |
A resolução de vídeo é um ponto fundamental na qualidade dos jogos.
Para se entender o que é resolução, é preciso saber os principais elementos
da tela.
A tela é composta por pequenos pontos, dispostos tanto horizontal como
verticalmente. É semelhante ao tecido do véu de noiva. Dependendo de quais
pontos forem acesos na tela, eles formarão algum tipo de imagem. Por exemplo,
em uma tela com dimensões de 8 x 8, a letra a será formada da seguinte
forma:
Aumentando-se a quantidade de pontos, teremos um 'a' mais perfeito. Em
uma tela do mesmo tamanho, mas com 128 x 128 , temos:
Dependendo das combinações cores que forem acesas, o desenho se torna
mais sofisticado. Vejamos um 'a' volumétrico:
Quanto maior for o número de cores de um sistema, melhor será a imagem.
Então, façamos uma pequena comparação de uma foto, mudando 2
parâmetros: resolução e número de cores.
Seja a foto original com 16 milhões de cores e uma resolução de 206 x 189 :
256 cores |
16 cores |
2 cores |
|
|
|
|
|
|
103 x 94 |
68 x 63 |
51 x 47 |
|
|
|
|
|
|
5- Cores
Totais x Cores Simultâneas |
Outra dúvida freqüente é quanto a seguinte informação: o videogame
tem 256 cores e 16 simultâneas. Qual a diferença?
Quando temos N cores simulatâneas, podemos usar N cores ao mesmo tempo na tela. Isto significa dizer que se tivermos 256 cores simultâneas, podemos ter 256 cores DIFERENTES ao mesmo tempo na tela.
Por outro lado, quando temos 256 cores e uma palheta de 16 cores, só podemos ter 16 cores diferentes ao memsmo tempo na tela, num universo de 256. Algo semelhante pode ser imaginado: Suponha uma turma com 10 alunos, onde o professor chama 2 alunos por vez para um teste oral. Podem entrar quaiquer combinações de alunos, entre os 10, mas somente 2 alunos ao mesmo tempo.
Bem, para começar, vamos entender o que é memória de vídeo. A
memória de vídeo é mais uma memória presente no videogame, com a função
exclusiva de armazenar dados relativos à tela. A informação contida nesta
memória será passada constantemente para a tela.
Depende da construção da memória, para que se tenhamos a relação
célula x ponto na tela. Podemos ter uma célula representando 8 pontos na tela,
como uma célula representando apenas 1 ponto e até 3 células para representar
1 ponto.
Com uma memória de vídeo de 64 kb (65536 bytes), é possível se
construir telas com as seguintes configurações:
Número
de pontos x byte de memória (célula) |
Resolução |
1 x 1 |
256 x 192 (49.152
pontos) |
1 x 4 |
192 x 80 (15.360
pontos) |
3 x 1 |
512 x 414 (211.968
pontos) |
Quanto mais células de memória usarmos para representar
um ponto na tela, mais variações de uma cor teremos.
O cálculo de quanto de
memória é gasto é feito multiplicando-se os valores da resolução,
obtendo-se o total de pontos na tela. Se este total for menor que 655356
(tamanho da tela), dividimos o tamanho da tela pelo valor achado. Isto significa
que cada ponto pode ser representado por n células. Se o resultado da
divisão for maior que 65536, então divide-se o valor achado pelo total da
tela. Agora, cada célula pode representar n pontos. O valor da divisão deve
ser truncado (ignora-se o valor depois da vírgula).
Vejamos agora como é feita a representação (exemplo) de cores,
tendo-se 0,5 byte (4 bits) para cada ponto:
Valor |
Cor exibida
na tela |
00 |
Incolor |
01 |
Preto |
02 |
Verde |
03 |
Verde
claro |
04 |
Azul
escuro |
05 |
Azul
claro |
06 |
Vermelho
escuro |
07 |
Ciano |
08 |
Vermelho |
09 |
Vermelho
claro |
10 |
Ouro |
11 |
Amarelo |
12 |
Verde
musgo |
13 |
Magenta |
14 |
Cinza |
15 |
Branco |
No exemplo de 256 x 192, temos 1 byte para representarmos
as cores, ou seja, 256 cores diferentes. Observado-se a tabela cima, teríamos
mais cinzas, verdes, vermelhos etc, com valores variando de 0 a 255.
Mas nos 256 x 192 eu só posso usar 256 cores por ponto? A resposta é não! Por incrível que pareça, é
possível representar cada ponto, neste caso, por mais de um byte! Suponhamos
que cada cor tenha sua representação em vez de 1 byte (256 cores), 3 bytes (16.777.216
cores). Mas como é possível montar uma tabela de cores com 16 milhões de
cores, se eu só disponho de 256 espaços? Hum, aí vem o truque! Se em vez
usarmos os valores de 0 a 255 para representarmos a cor diretamente, usamos-nos
para indicarmos qual a cor de 3 bytes a ser usada! Esta 'jogada' é chamada de
paleta de cores. Exemplo:
Valor |
Cor correspondente |
00 |
0 |
01 |
14.312.123 |
... |
... |
192 |
10.312.000 |
193 |
5.056.893 |
... |
... |
255 |
16.777.215 |
Podemos alterar o valor de 3 bytes de qualquer lugar da
tabela. Por exemplo, em 01 alteramos para 3.782.616. Porém, como os pontos da
tela são representados pelos valores da coluna da esquerda da tabela, TODO
ponto que tiver sendo representado pelo valor 01, será alterado para a nova
cor.
Observando-se a tabela acima, concluímos que temos 16 milhões de
combinações de cores e que só podemos escrever na tela 256 diferentes ao
mesmo tempo. Então, temos 16 milhões de cores, com 256 simultâneas.
Outro aspecto importante no videogame está relacionado ao seu processador de som. Qual a freqüência que ele trabalha? Quantos Canais de som ele tem?
Quanto maior a freqüência do processador de som, melhor serão os sons digitalizados. A qualidade de CD é de 44 KHz.
Canal de som diz respeito aos song GERADOS pelo processador, como sons de piano, flauta, orgão, trombone, etc. Quanto mais canais de som tivermos, mais instrumentos ou notas poderão ser tocadas ao mesmo tempo. Por exemplo, se tivermos apenas 1 canal de som, poderemos ter apenas 1 instrumento e 1 anota por vez. Caso tenhamos 2 canais de som, poderemos ter 1 intrumento e 2 notas ou 2 instrumentos ao mesmo tempo.
MARCELO'S HP 2003 - Inicio