Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
27/04/1992

< A PRIMEIRA ETAPA: DISPLAY.SYS >


Como vimos, para usar páginas de código são necessárias algumas alterações nos arquivos de configuração, o Autoexec.Bat e Config.Sys. Que vamos começar a examinar agora. E por onde devido: pelo princípio. Vejamos primeiro o que fazer para carregar o driver Display.Sys, que informa ao sistema o tipo de placa de vídeo e o número de páginas de código que se pretende usar.

Sendo o Display.Sys um device driver (gerenciador de dispositivo), ele deve ser carregado com o comando "device" no arquivo Config.Sys. A sintaxe do comando tem o aspecto da linha:

DEVICE=[espec] con:=(tipo,[hcp],[nr])

Ela inclui o comando "device" seguido de um sinal de igual, da especificação do arquivo do driver, do parâmetro con: (ou con), outro sinal de igual e de mais três parâmetros entre parênteses que especificam o tipo de vídeo que está sendo usado, a página de código de hardware e o número de páginas de código que você pretende usar. Parece complicado? Então vamos destrinchar isso.

Primeiro, a tal "especificação do arquivo do driver", ou seja, drive, via de diretório e nome do arquivo que contém o driver. Como você sabe, um gerenciador de dispositivo nada mais é que um arquivo com o código necessário para que o sistema operacional seja capaz de se entender com um periférico (no nosso caso, o vídeo) e que é incorporado ao sistema operacional durante a partida da máquina. Sendo um arquivo, ele está armazenado em algum diretório de um disco. E, para carregá-lo, o sistema operacional precisa saber o nome do arquivo e onde encontrá-lo.

O nome do arquivo, evidentemente, é sempre "Display.Sys". E, quando você instalou o sistema operacional, ele foi copiado para o diretório correspondente (geralmente o diretório "DOS" do disco C, e portanto na maioria dos micros a especificação do arquivo do driver é C:\DOS\DISPLAY.SYS). Mas como, sempre que se manda o sistema ler um arquivo (mesmo durante a partida), ele procura primeiro no diretório corrente, você poderá simplificar um pouco as coisas e omitir da linha de comando o disco e via de diretório, desde que se dê ao trabalho de copiar o arquivo Display.Sys para o mesmo diretório do Config.Sys, o diretório raiz do disco de boot.

O parâmetro "con" (ou "con:") informa ao sistema o que será gerenciado pelo driver. Ele nada mais é que a abreviação de "console", o apelido que o DOS dá ao conjunto teclado/vídeo, os dois dispositivos padrão de entrada/saída. Mas não se preocupe que o Display.Sys jamais irá alterar seu teclado: como ele gerencia apenas a saída de informações, afetará apenas ao vídeo. E o parâmetro pode ou não ser seguido de ":" (dois-pontos), indiferentemente. O sistema aceitará ambas as formas.

Finalmente, o mais importante: as três informações que realmente interessam, sobre tipo de vídeo e páginas de código. Elas sucedem ao sinal de igual, são obrigatoriamente contidas entre parênteses e separadas por vírgulas.

A primeira especifica o adaptador de vídeo em uso (a placa de vídeo, não o monitor; algumas placas EGA ou VGA suportam monitores CGA monocromáticos: nesse caso você pode usar páginas de código. Eu mesmo as uso em um velho XT com monitor CGA ligado a uma placa EGA que tenho para testar programas e receber faxes). Teoricamente o parâmetro pode especificar "MONO", "CGA", "EGA" ou "LCD". Mas sem nenhuma razão prática, pois placas CGA e monocromáticas não suportam páginas de código, portanto "MONO" e "CGA" jamais serão usados. "LCD" (Liquid Cristal Display) serve apenas para um micro portátil fabricado pela IBM e já fora de linha, o IBM Convertible, de modo que se você tem um vibrante notebook com vídeo LCD padrão VGA, deverá usar o parâmetro correspondente a VGA. E, por falar nisso, se sua placa é VGA e você está começando a se preocupar com a ausência de seu parâmetro, não se afobe: "EGA" serve também para ela (e para os novos adaptadores de vídeo de alta resolução 8514/A). Portanto, para todos os efeitos práticos, todos os demais parâmetros são dispensáveis: é quase certo que você vai usar "EGA" mesmo. Coisas do DOS...

A segunda informação diz respeito à página de código de hardware, ou seja, aquela que vem "embutida" na ROM de sua placa de vídeo. Geralmente ela é a 437. Mas, se você não tem certeza, também não se preocupe: a inclusão do parâmetro não é obrigatória. E o mais comum é, simplesmente, dispensá-lo. Mas como o DOS espera encontrar ali um parâmetro na linha de comando, as vírgulas que o separariam dos demais não podem ser omitidas.

Finalmente, o último parâmetro: o número de páginas de código adicionais que você pretende usar. Note que se trata do "número" de páginas de código, não de "que" páginas de código. O parâmetro informa apenas quantas, e não quais, visto que sua inclusão aqui visa tão somente reservar a memória necessária para a carga das páginas de código, que será feita mais tarde. Seu valor depende do adaptador de vídeo e, teoricamente, pode variar de zero a 12. Zero, evidentemente, não faz o menor sentido. E, ao menos por enquanto, qualquer coisa acima de dois também não: o adaptador tipo LCD somente pode usar uma página de código além da de hardware, e o EGA (ou VGA) no máximo duas (uma de cada vez, evidentemente). Portanto, se você pretende usar apenas uma página de código adicional, o parâmetro valerá 1. Se quiser usar duas (o que é bastante conveniente, conforme veremos mais tarde), ele valerá 2.

Pronto: está tudo aí. Agora já podemos ter uma idéia de como ficará a linha de comando no Config.Sys. Vamos tomar como exemplo o caso mais comum: o usuário tem um adaptador de vídeo EGA ou VGA (portanto, usará o parâmetro "EGA" para "tipo"), vai omitir a página de código de hardware na linha de comando (o que dispensará a inclusão do parâmetro [hcp], mas não das vírgulas que o cercam), pretende usar duas páginas de código adicionais (logo, usará o valor "2" para [nr]) e copiou o arquivo Display.Sys para o diretório raiz do disco de boot (e por isso pode omitir o drive e via de diretório do arquivo Display.Sys). Para carregar o driver, basta incluir no Config.Sys a linha:

device=display.sys con:=(ega,,2)

Simples, não? Pois bem, a primeira etapa de nossa jornada em busca das páginas de código foi vencida. Mas você ainda terá algum trabalho antes de se deliciar com um a-til em seu vídeo...

B. Piropo