Este aqui é um pequeno truque que descobri para gerar um "pseudo" realce de sintaxe na SCREEN 1 (modo de texto) do MSX.
O resultado fica como visto abaixo:
|  | 
| O código para gerar esse efeito é exatamente o da imagem. | 
       Para modificar a cor basta alterar o valor após a vírgula:
Alguns valores alteram também a cor de fundo:
|  | 
Já deu pra ver que o "pulo do gato" está nesses "VPOKEs", que alteram apenas a cor das letras maiúsculas, deixando o restante (números e símbolos) em branco (cor padrão). Acredito que agora ficou claro porque chamei de "falso" realce de sintaxe. Apesar disso, pode-se dizer que tal macete não é de todo irrelevante (!), pois de fato melhora a legibilidade do código.
No meu caso, achei particularmente útil no momento em que achatava meu "ten liner". Veja abaixo como pode realmente facilita um pouco a vida do
|  | 
| Trecho do meu "10 Liner" ("Ballistic Challenge"). | 
Agora o mesmo trecho porém sem o realce:
|  | 
| É mais fácil encontrar genro com a foto da sogra na carteira do que bugs nesse código! | 
  E mais outro fragmento, com outra cor:
|  | 
Agora mais alguns exemplos com códigos mais "normais" (não comprimidos):
         É possível adicionar outra cor no lugar do branco, para isso basta chamar o comando COLOR escolhendo a cor do primeiro plano (por exemplo.: color 7, 1, 1) antes dos VPOKEs:
|  | 
| Estas duas linhas já fazem a mágica acontecer | 
 Como escolher as cores (da tinta e do fundo)
    Há 16 cores e para cada uma é dado um código, entre 0 e 15, como abaixo:
|  | 
| Código das cores do MSX em SCREEN 1 | 
Pegue o código da cor de tinta selecionada. Multiplique por 16 e adicione o código para a cor do fundo.
Suponhamos que queremos cor de tinta branca com fundo azul escuro. Basta multiplicar 15, que é o código da cor branca, por 16 e somarmos com o código da cor azul escuro, que é 4:
15 x 16 = 240 + 4 = 244
     Este recurso só é possível nas SCREEN 1 e 2. Se você precisar ou quiser alterar as cores dos caracteres na SCREEN 2 (modo gráfico), os endereços da VRAM para os VPOKES ficam entre 8192 e 14335. 
           Até a próxima!
 









 
Nenhum comentário:
Postar um comentário