Categories: Notícias

Aceleradoras de vídeo: 2D

Tenho um forte palpite que brevemente estaremos discutindo aqui controladoras de vídeo de alto desempenho. E para que possamos efetivamente avaliar o quão complexas são estas controladoras e dar o devido crédito aos magos tecnológicos que as desenvolvem e fabricam, é preciso conhecer pelo menos as noções básicas sobre o processo de criação das imagens nas entranhas do computador. Vamos, então, ao trabalho.

Antigamente as coisas eram muito simples. E bota simples nisso: os primeiros computadores sequer podiam mostrar imagens, pois usavam a chamada “interface de caracteres”. Tudo aquilo que eles exibiam eram caracteres, ou seja, letras e sinais gráficos.

O interessante é que os usuários mais recentes, ao ouvir esta afirmação, não percebem claramente a diferença. Isto porque eles estão acostumados com suas “interfaces gráficas” (GUIs, ou “Graphics User Interfaces“) onde tudo o que se vê na tela são gráficos, inclusive os caracteres, pois as novas interfaces nada mais fazem que “desenhar” na tela. E quando se lê um texto em uma tela de Windows, do Mac ou de qualquer distribuição Linux que use interface gráfica (ou seja, ícones e coisas que tais), o que na verdade se está enxergando são caracteres desenhados na tela.

Por isto é possível, por exemplo, mudar a fonte (ou seja, o “desenho” das letras) sem alterar o texto. Da próxima vez que você estiver digitando algo em um programa que permita alterar fontes, experimente selecionar um trecho do texto e trocar a fonte para, por exemplo, “Brush Script”, “Magneto” ou “Mistral” e terá uma boa ideia do que chamo de “desenhar caracteres na tela”.

Nos tempos da interface de caracteres a coisa era diferente. A tela era dividida em pequenos retângulos em cujo interior cabia um único caractere. Em geral uma tela era formada por 25 linhas com 80 destes retângulos cada (a famosa tela 80×25; havia outros formatos, mas eram raros). Quando um programa precisava exibir uma nova linha no vídeo, encaminhava ao sistema operacional os códigos dos caracteres a serem exibidos. O SO, por sua vez, criava em um trecho da memória ? denominado “memória de vídeo” ? a tela a ser exibida.

Mas note que a memória de vídeo (cujos chips normalmente residiam na própria controladora de vídeo, como hoje) não armazenava o “desenho” da tela. Guardava apenas uma tabela na qual cada posição correspondente a um dos pequenos retângulos da tabela (ou matriz) de 80×25 era preenchida com o código do caractere que deveria ser mostrado naquela posição e certos detalhes, como cor do caractere e do fundo (no máximo dezesseis) e atributos do caractere: sublinhado, piscante, enfatizado e reverso (trocando as cores do caractere e do fundo; se não entendeu, espere um pouco que logo ficará claro). Os circuitos da controladora, então, liam a matriz, preenchiam cada posição da tela com a imagem do caractere (copiada daquela que estava gravada em uma memória permanente também residente na controladora) conforme seus atributos e enviavam, agora sim, a imagem da tela completa para o vídeo sessenta vezes por segundo.

Quando o programa precisava mudar o conteúdo da tela, enviava mais uma linha para a UCP, que repetia o processo e a enviava para a controladora. Que, por sua vez, compunha uma nova “imagem” movendo cada linha anterior uma posição para cima, liberando assim a linha de baixo para receber os novos caracteres.

Note que, ao sistema, não era possível mover o cursor para cima e “encaixar” uma linha entre as demais. Tudo o que fosse escrito na tela do sistema tinha que ser na última linha livre. O usuário poderia, no máximo, emitir o comando “cls” (de “clear screen“, limpar tela) e apagar tudo, começando novamente da primeira linha (é claro que, durante a execução de um programa, seria possível mover o cursor e inserir linhas, mas para isso o programa precisava ter acesso direto à memória de vídeo e cabia ao programador fazer todo o trabalho braçal exigido).

O resultado era o que aparece na Figura 1, uma tela do Macro Assembler da MS. Tudo nela são caracteres, mesmo aquilo que parece desenho. As bordas, por exemplo, são “montadas” com caracteres especiais e os menus são obtidos alterando as cores da letra e do fundo. Repare bem e veja que tanto no menu quanto no corpo do programa a fonte é exatamente a mesma e do mesmo tamanho, já que não havia como alterar nem uma coisa nem outra. Repare ainda como era possível alterar as cores do fundo e dos caracteres e note, no painel da direita, como se pode trocar as cores da frente e do fundo (entendeu agora o atributo “reverso”?). Quem tiver paciência pode contar: nela há exatas 25 linhas e 80 colunas.

Se você usa Windows e quer ter uma ideia aproximada de com que isto se parecia, abra o menu Iniciar, clique em “Todos os Programas”, “Acessórios” e abra um Prompt de Comando. E se desejar usufruir a experiência de trabalhar em telas de caracteres, da próxima vez que ligar seu computador, acesse o “setup”. Verá então como é trabalhar com telas com número fixo de linhas e colunas e com uma “fonte” gravada em ROM que não se pode alterar. Dureza…

Page: 1 2 3 4

Recent Posts

Empresas brasileiras aceleram investimentos em IA, mas falham em governança

O avanço da inteligência artificial nas empresas brasileiras tem ocorrido em ritmo acelerado, mas a…

4 minutos ago

Google, Sebrae, Itaú Unibanco e Tera lançam programa gratuito de IA para empreendedores

O empreendedor brasileiro já convive com a inteligência artificial (IA), mas ainda enfrenta o desafio…

2 horas ago

Natura busca startups de beleza para programa de aceleração voltado à inovação e crescimento na América Latina

A Natura abriu as inscrições para a edição de 2026 do Natura Innovation Challenge, iniciativa…

2 horas ago

Google Cloud anuncia programa de capacitação em IA e nuvem para 3 milhões de brasileiros

O Google Cloud anunciou a ampliação de sua meta de qualificação profissional no Brasil e…

4 horas ago

Com a IA, setor de saúde vive revolução que o marketing digital proporcionou há dez anos

por Eduardo Barros A transformação da inteligência artificial (IA) nos negócios lembra o que aconteceu…

5 horas ago

UE ordena que Meta reabra WhatsApp a chatbots rivais

A Comissão Europeia determinou que a Meta reestabeleça o acesso de assistentes de inteligência artificial…

20 horas ago