Tecnicamente, VGA significa Video Graphics Array , um padrão de vídeo de 640x480, introduzido em 1987. Na época, havia uma resolução relativamente alta, especialmente para telas coloridas.
Antes da introdução do VGA, tínhamos outros padrões gráficos, como hercules, que exibiam texto (80 linhas de 25 caracteres) ou gráficos monocromáticos de alta definição relativa (em 720x348 pixels).
Outros padrões da época eram o CGA ( adaptador gráfico colorido ), que também permitia até 16 cores com uma resolução de até 640x200 pixels. O resultado disso seria assim:
Finalmente, um padrão de PC digno de nota foi o EGA (Enhanced graphics adapter), que permitiu resoluções de até 640 × 350 com 64 cores.
(Estou ignorando os padrões que não são os PCs para manter isso relativamente curto. Se eu começar a adicionar os padrões Atari ou Amiga - até 4096 cores no momento! -, isso ficará muito tempo.)
Então, em 1987, a IBM lançou o computador PS2. Havia várias diferenças notáveis em comparação com seus antecessores, que incluíam novas portas para mouses e teclados (anteriormente, os mouses usavam portas seriais de 25 pinos ou 9 portas seriais, se você tivesse um mouse); unidades padrão de 2,5 cm e um novo adaptador gráfico com alta resolução e muitas cores.
Esse padrão gráfico foi chamado de Matriz de gráficos de vídeo . Ele usou um conector de 15 linhas e 15 pinos para transferir sinais analógicos para um monitor. Esse conector durou até alguns anos atrás, quando foi substituído por padrões digitais superiores, como DVI e porta de vídeo.
Após VGA
O progresso não parou com os padrões VGA. Logo após a introdução do VGA, surgiram novos padrões, como o 800x600 S uper VGA (SVGA), que usava o mesmo conector. (Hercules, CGA, EGA, etc, todos tinham seus próprios conectores. Você não podia conectar um monitor CGA a uma placa VGA, nem mesmo se tentasse exibir uma resolução suficientemente baixa).
Desde então, passamos a telas de resolução muito mais alta, mas o nome mais usado continua sendo VGA. Mesmo que os nomes corretos sejam SVGA, XVGA, UXGA, etc.
(Cortesia gráfica da Wikipedia)
Outra coisa que é chamada de 'VGA' é o conector DE15 usado com a placa VGA original. Esse conector geralmente azul não é a única maneira de transferir 'sinais VGA' analógicos para um monitor, mas é o mais comum.
Esquerda: DB5HD Direita: conectores VGA alternativos, geralmente usados para obter melhor qualidade)
Uma terceira maneira de 'VGA' é usada é descrever uma placa de vídeo, mesmo que essa placa possa produzir resoluções totalmente diferentes da VGA. O uso está tecnicamente errado ou deve ser pelo menos 'placa compatível com VGA', mas a fala comum não faz essa diferença.
Isso deixa a escrita para VGA
Isso vem da maneira como a memória em um IBM XT foi dividida. A CPU pode acessar até 1MiB (1024KiB) de memória. O 512KiB inferior foi reservado para RAM, o 512 KiB superior para placas de expansão, ROM etc.
Essa área superior é para onde a memória dos cartões VGA foi mapeada. Você poderia escrever diretamente para ele e o resultado apareceria no visor.
Isso não foi usado apenas para VGA, mas também para alternativas da mesma geração.
G = RAM de vídeo no modo gráfico
M = RAM de vídeo em modo de texto monocromático
C = RAM de vídeo em modo de texto em cores
V = BIOS de ROM de vídeo (seria "a" no PS / 2)
a = ROM da placa adaptadora e RAM de uso especial (espaço UMA livre)
r = BIOS ROM da placa-mãe PS / 2 adicional (UMA gratuita em sistemas não-PS / 2)
R = BIOS da placa mãe ROM
b = ROM IBM Cassette BASIC (seria "R" em IBM compatíveis)
h = Área de memória alta (HMA), se o HIMEM.SYS estiver carregado.
Memória convencional (base):
Primeiros 512 KB (ou 8 pedaços de 64 KB).
Área de memória superior (UMA):
0A0000: GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
0B0000: MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
0C0000: VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
0D0000: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa '
0E0000: rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrp
0F0000: RRRRRRRRRRRRRRRRRRRRRRRbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbRRRRRRRR
( Fonte do mapa ASCII).