Значок ресурса

ED-ART GGMI

Нет прав на скачивание
Языки: 🇵🇹 Португальский
Формат: 💻 BIN файл
Требования: 🖥️ ZX81 16K

Ссылки:
Страница на ZXArt
Страница на Spectrum Computing

---------------------------------------------------------------------------------



E D - A R T G G M I



---------------------------------------------------------------------------------

PUBLICADO NA REVISTA MICRO SISTEMAS EDIÇÃO NR.54 (MARÇO DE 1986)

---------------------------------------------------------------------------------

AUTOR: CLÁUDIO DE FREITAS B. BITTENCOURT

---------------------------------------------------------------------------------

CONVERTIDO POR KELLY ABRANTES MURTA - BRASIL - OUTUBRO 2000

---------------------------------------------------------------------------------



OBS.: Texto escaneado diretamente da revista MS e reconhecido via OCR.





INTRODUÇÃO



O computador é uma máquina fria, impessoal e, para muitos, antipática. Sem

dúvida, mas é próprio das máquinas, essa invenção do bicho-homem que carrega tão

pouco da personalidade do seu criador, justamente naquilo que ela tem de mais

humano.



Os seus programas, por exemplo; você já reparou bem neles à luz do sentimento

estético ou moral ou sentimental? São de fato frios, convenhamos. A despeito de

toda a sua criatividade, você não tem feito muita coisa para atenuar essa faceta

menor do seu equipamento, não é verdade? E no entanto, você é um cara legal,

amante do belo, cheio de ternura no coração. Você não é máquina!



Urge então fazer algo a respeito e aqui está GGMI para despertar A veia artística

que há, reprimida, dentro do leitor. Através da arte visual, vamos explodir para

o mundo esse oceano de sentimentos que jaz latente no fundo de su'alma (bonito,

hem'?).



O Ed-Art GGMI é um editor gráfico que se presta à preparação de telas, as quais

poderão ser arquivadas em fita independentemente e acopladas a qualquer programa,

de sua lavra ou não. Dependendo da sua conveniência, as telas poderão ter

continuidade entre si, formando um telão. Sequências verticais e bidirecionais

são também fáceis de se conseguir.





MONTAGEM



O Ed-Art foi criado para ser um módulo do Micro Bug. Para montá-lo, carregue no

micro esse fabuloso (nunca é demais dizer) programa publicado pela sua MICRO

SISTEMAS e, com o comando M, digite os códigos da listagem nos endereços

indicados. Ao terminar, confira com o comando P 6E00,783A. O resultado tem que

ser 9B0A. Isso posto, salve-o em fita várias vezes com o comando I 6E00,783C. A

seguir, use o comando C do Micro Bug para carregar um módulo salvo; só depois

dessa operação ele poderá ser acessado.





ORGANIZAÇÃO DA MEMÓRIA



Um módulo do Micro Bug ocupa a memória do endereço 6E00 até 77FF, mas o Ed-Art é

diferente, pois foi necessário aumentar o espaço, baixando o endereço inicial

para 6B00 (ou seja, menos 768 bytes). Junto com ele desceram o RTP, a ENSP, o

stack do GOSUB e o stack da máquina - veja o manual do micro para maiores

esclarecimentos. Não se preocupe com essa expansão, pois tudo ocorre

automaticamente quando é acionado pela primeira vez qualquer um dos quatro

comandos disponíveis no Ed-Art. E o status quo anterior é restabelecido ao ser

acionado o comando C do Micro Bug, que carrega um novo módulo no lugar do Ed-Art.

O único efeito prático é uma diminuição correspondente da memória disponível para

os programas BASIC, abaixo do Micro Bug. Mas em 99% dos casos essa pequena

quantidade de bytes não fará falta.



Além do arquivo de imagens normal do micro, que aparece na tela da TV, o Ed-Art

trabalha com mais dois arquivos, situados em buffers nas seguintes posições da

memória:



l°) Principal - de 27392(6B00) a 28159(6DFF)

2°) Reserva - de 28160(6E00) a 28927(70FF)





COMANDO T



O comando T, acessado via Micro Bug, é o editor propriamente dito. Ao ser

acionado, aparecerá na tela o Ed-Art piscando maliciosamente para você - não o

censure, é uma cortesia - pois, trata-se de um cavalheiro de fina educação.

Apague-o com SHIFT A. Restará na tela aquilo que o manual do micro chama

pomposamente de "elemento de imagem", mas que para nós responderá pelo simpático

nome de pixel. O dito ocupa a área de 1/4 de caráter e é usado nas instruções

PLOT e UNPLOT do BASIC Sinclair. Reconheceu? É o próprio. Pois o pixel desloca-se

nas oito direções cardeais com o uso das teclas abaixo, sabiamente escolhidas por

GGMI em função de mnemónicos que facilitarão a sua vida, leitor.



TECLA MNEMÓNICO DIREÇAO TECLA MNEMÓNICO DIREÇÃO

1 {1} esquerda-acima 5 {5} esquerda

2 {2} direita-acima 6 {6} abaixo

3 {3} direita-abaixo 7 {7} acima

4 {4} esquerda-abaixo 8 {8} direita



OBS.: Os mnemônicos representam os símbolos gráficos obtidos com SHIFT+TECLA

em modo GRAPHICS.



O pixel pode caminhar nas condições PLOT, UNPLOT e "Sem Rastro", conforme tenham

sido acionadas previamente as teclas K, J ou L, as mesmas de +, - e = . Prático,

não?





MACROCARACTERES



O pixel é o modo principal de edição, permitindo acesso a todas as funções

disponíveis. Podemos imprimir macrocaracteres acionando as teclas N (de <) ou

M(de >). A primeira prepara um caráter grande (4x4) e a segunda um gigante (8x8).

Os símbolos "<" e ">" alternam-se com o pixel piscante para indicar a condição

assumida. A tecla que você pressionar em seguida será macroimpressa, salvo se for

NEW LINE, FUNCTION, RUBOUT ou GRAPHICS, que desativam a preparação. Todos os

símbolos do Sinclair são válidos e os de vídeo inverso são preparados por SHIFT N

e SHIFT M, em vez de N e M. Se o espaço na tela for insuficiente para o

macrocaráter, a tecla de preparação não surtirá efeito. Após a macroimpressão, o

pixel estará na condição "Sem Rastro", o que aliás ocorre após qualquer operação

extraordinária. Logo, você irá apreciar isso.





RETA



Reconheço, "reta" é força de expressão, pois o que aparece na tela é mais chegado

a caminho de rato do que a reta. Enfim, é o que nos permite a baixíssima

resolução do nosso equipamento, que se há de fazer? E deu trabalho, a desgraçada!

Ela é preparada pela tecla R. A partir daí, o pixel desloca-se sem rastro nas

direções horizontal e vertical (teclas 5 a 8), exclusivamente. No ponto de origem

fica um segundo pixel piscante, para sua orientação. Ao ser pressionado SHIFT R,

ei-la impávida e gloriosa na sua pobreza, de um ponto ao outro. NEW LINE é a

tecla que desativa a preparação da reta.





CIRCULO



Esse é melhorzinho, ainda que também precário. Coloque o pixel na posição que

você pretende que seja o centro do círculo e pressione a tecla C, a letra que vai

aparecer irá se alternar com o pixel. O micro ficará então esperando que você

tecle dois algarismos relativos ao raio da circunferência, que poderá variar de

02 a 35. O primeiro algarismo é o da dezena e o segundo da unidade. A letra C

será substituída pelo primeiro algarismo que por sua vez será substituído por um

caráter indicativo do raio, tão logo seja teclado o segundo algarismo. O código

desse caráter (vide manual) é igual ao raio mais 28 (se você não gostou, deixe de

fazer cara feia e ignore o que se passa no centro da circunferência). A tecla que

desativa a preparação do círculo é NEW LINE.





MANIPULAÇÃO DOS ARQUIVOS



A manipulação dos arquivos é uma das mais versáteis funções do Ed-Art. Ela

permite que se faça a interface de duas telas, portanto deve ser usada quando se

pretender dar continuidade horizontal ou vertical às mesmas. As teclas de

acionamento são P (de Principal), H (de Horizontal) e V (de Vertical). A tecla P

apresenta na tela o conteúdo do buffer principal (o primeiro na memória). Só que,

a cada vez que ela é acionada, esse conteúdo é antes trocado com o que está no

buffer reserva (o segundo na memória). As teclas H e V provocam na tela o

rolamento da imagem para a esquerda e para cima, respectivamente, possibilitando

o interfaceamento das duas pêlos quatro lados. E semelhante a um SCROLL, só que

em vez de rolar linha por linha (coluna por coluna), o rolamento se dá de metade

em metade da tela.



As teclas H e V podem ou não trocar o conteúdo dos buffers, dependendo da

situação. O conteúdo que ocupar o quadrante superior esquerdo da tela será sempre

do buffer principal. Contudo, não convém facilitar: antes de efetuar qualquer

operação que possa comprometer a integridade do seu trabalho (ex: CLS, SAVE e

LOAD de arquivos), estabeleça o conteúdo correto do buffer principal mediante o

acionamento da tecla P - ela existe para isso.





OUTRAS FUNÇÕES DO MODO PIXEL



No modo pixel são disponíveis ainda as funções abaixo, apresentadas na sequência

"tecla-mnemônico-efeito".



9 - "GRAPHICS" - efetua inversão de vídeo

SHIFT S - "LPRINT" - remete imagem da tela para a impressora

SHIFT A - "NEW" - efetua CLS

SHIFT NEW LINE- - "FUNCTION"' - retorna ao Microbug

SHIFT Y - "RETURN" - retorna direto ao BASIC

NEW LINE - - muda para modo ESCRITA HORIZONTAL





MODO ESCRITA



O modo escrita, que pode ser horizontal ou vertical, permite imprimir todos os

símbolos Sinclair em tamanho normal. As funções disponíveis são:



SHIFT 9 - "GRAPHICS" - passa a imprimir caracteres inversos

SHIFT O - "RUBOUT" - executa RUBOUT (horizontal ou vertical)

SHIFT NEW LINE - "FUNCTION" - retorna ao Microbug (igual ao modo PIXEL)

NEW LINE - - muda modo





A TECLA NEW LINE



A mudança do modo de edição é efetuada pela tecla NEW LINE, obedecendo à seguinte

sequência:



PIXEL -> ESCRITA HORIZONTAL -> ESCRITA VERTICAL -> PIXEL ... etc.



O modo em execução é identificado pelo cursor piscante que se alterna com o

caráter, ao qual se superpõe. Esse cursor, dependendo do caso, pode ser: pixel,

H, [H] , V ou [V].





AUTO-REPETIÇÂO



Quase todas as funções do comando T são auto-repetitivas (excetuam-se aquelas em

que essa propriedade seria inconveniente). Ao ser pressionada uma tecla, a função

é prontamente executada e caso você não a libere, após um pequeno tempo de espera

começa a auto-repetição em ritmo veloz. Isso, além de agilizar o seu trabalho,

lhe permitirá apreciar alguns efeitos dinâmicos com a manipulação de arquivos.





COMANDOS S e U



Retornando ao Micro Bug, você disporá ainda dos comandos S, U e V (este será

visto mais adiante).



O comando S (de SAVE) salva em fita o conteúdo do buffer principal e o comando U

carrega, também no buffer principal, o que for lido em fita. Muita atenção no uso

desses comandos, pois um erro de arquivo pode apagar irremediavelmente um

trabalho acabado, sem possibilidade de recuperação. Recorra sempre à tecla P do

modo pixel para estabelecer o conteúdo correio dos buffers.



Para a eventualidade de carregar no buffer uma gravação imperfeita, que mandaria

o sistema para o espaço quando mostrada na tela, o comando U zera o bit 6 dos

bytes lidos em fita. Isso equivale a subtrair 64 dos códigos não imprimíveis,

tornando-os imprimíveis. Os demais permanecem inalterados. Ignore este parágrafo

se você não entendeu nada do que eu quis dizer.





ACOPLAMENTO EM LINHA PRINT - COMANDO V



Existem diversas maneiras de acoplar as telas produzidas com os seus programas.

A mais simples é através do comando V que cria no BASIC uma linha PRINT com o

conteúdo total ou parcial do buffer principal. Sua sintaxe é:



V XXXX,YY



onde XXXX é o número da linha que vai ser criada e YY é a quantidade de linhas do

buffer principal que deve ser copiada (contando de cima para baixo). Dados

impróprios provocam mensagens de erro: as mesmas do comando E do Micro Bug (MS

nº 33) e mais "HUUUU", que é o Ed-Art vaiando se você fizer YY igual a zero ou

maior do que 24. Lembre-se de que, no modo normal, o Micro Bug interpreta os

dados no sistema hexadecimal, a menos que haja um $ antes.



Cabe aqui uma dica importante, para evitar um defeito do firmware Sinclair, que

já atrapalhou a vida de muita gente boa por aí. Quando se está trabalhando com

linhas maiores do que a tela, pode ocorrer de uma delas ficar rolando ad

infinitum na TV, obrigando o infeliz programador a desligar o micro. Isso

acontece por incompatibilidade das variáveis do sistema LPC e LTOP quando, por

exemplo, apaga-se a linha posterior a uma dessas grandonas. Para sua segurança e

tranquilidade, crie uma linha assim:



XXXX REM NÃO ME APAGUE



onde XXXX é igual ao número da linha fatídica mais um.



O defeito pode ocorrer também ao retornarmos ao BASIC e teclarmos NEW LINE, após

termos criado linhas grandes com os comandos E e V do Micro Bug. Para evitar a

"catástrofe", tecle LIST em vez de NEW LINE e crie logo a linha de segurança. Só

então respire tranquilo.



As linhas PRINT criadas pelo comando V podem perfeitamente ser editadas e o PRINT

substituído por outros comandos BASIC válidos, como por exemplo LPRINT; PRINT AT

X,Y; LET A$=;etc.





ACOPLAMENTO EM VARIÁVEL STRING



O Micro Bug possui alguns comandos próprios que podem também ser usados no

acoplamento, embora de maneira menos direta e bem mais complicada. Dentre esses

estão os comandos E (MS n° 33) que cria linhas REM de qualquer tamanho e o

comando O (MS nº 34) que transfere conteúdos da memória de um lugar para outro.

O uso dessas alternativas requer bom conhecimento da organização de memória do

micro e não o recomendamos nem para o preenchimento de variáveis string

previamente criadas pela instrução DIM. Essa terefa é muito mais facilmente

executada através do próprio BASIC, com poucas linhas de programação. Em vez de

ficar aqui gastando inutilmente o nosso escasso latim, vamos a um exemplo (rode-o

no modo FAST).



10 LET A$=""

20 FOR F=l TO 22*32

30 LET A$=A$ + CHRS PEEK (27391+F)

40 NEXT F

50 STOP



Isso copia as 22 primeiras linhas do buffer principal na variável A$, que pode

então ser impressa a qualquer momento no fluxo normal do seu programa, desde que

você jamais tecle RUN (rode o programa com GOTO X) nem CLEAR, que apagam as

variáveis. O programinha apresentado como exemplo pode e deve ser modificado por

você de acordo com as suas conveniências, mas antes entenda-o bem. Repare que o

número 22 da linha 20 é a quantidade de linhas a ser copiada e que o 27391 da

linha 30 é igual ao endereço inicial do buffer principal menos l. Após ser

rodado, o programinha pode ser apagado, mas lembre-se, nada de RUN ou CLEAR.





ACOPLAMENTO NO ARQUIVO DE IMAGENS DO SISTEMA



A maneira mais lógica e inteligente de se efetuar o acoplamento de uma tela é

colocá-la no próprio arquivo de imagens do sistema no momento da gravação do

programa em fita. Como você deve ter notado, a maioria dos programas vai e volta

da fita para o micro, arrastando atrás de si quase 1 Kb de endereços

absolutamente vazios! Pois tratemos de ocupá-los com o que é chamado de "tela de

abertura", aquela que se apresenta tão logo o programa seja carregado no micro.

É uma excelente idéia fazer uma tela padrão, tipo marca registrada, que

personalize os seus programas. Mas o melhor mesmo nesse tipo de acoplamento é que

não aumenta o tamanho dos programas, uma vez que a área utilizada está ali à

espera da nossa criatividade.



O acoplamento é bastante simples. Crie, em local estratégico dentro do seu

programa, as linhas abaixo:



XXXX RAND USR 31210

YYYY SAVE "nome do seu programa"



Naturalmente, o Micro Bug deve estar em posição na memória do micro. Em seguida,

rode o programa BASIC com RUN XXXX ou GOTO XXXX, acionando com isso o Micro Bug.

Uma vez lá em cima, você pode agir calmamente, carregando o Ed-Art se ele ainda

não estiver em posição, carregando e/ou retocando a tela de abertura, etc. Nessa

situação, você só não deve executar os comandos B, E e V; o resto é válido.

Quando estiver tudo pronto, com o Ed-Art (no modo pixel do comando T) mostrando a

tela escolhida, acione o gravador e tecle SHIFT Y, função que retoma direto ao

BASIC sem passar pelo. Micro Bug. O retorno dar-se-á na linha YYYY, executando o

SAVE com tela e tudo. Um programa assim gravado, ao ser carregado, mostra a tela

de abertura e sai rodando a partir da linha seguinte a YYYY. Claro que o fluxo do

programa não deverá mais passar pela linha XXXX.



Essa linha, aliás, pode ser omitida se for adotado o seguinte procedimento:



1°) De alguma forma, descubra o endereço inicial da linha YYYY (será 16509 se for

a primeira do programa);

2°) Acione o Micro Bug através do comando direto RAND USR 31210;

3°) Com o comando M, troque o conteúdo da variável do sistema chamada PXLN,

situada nos endereços 16425/6, pelo endereço inicial de YYYY;

4°) Efetue as operações descritas no processo normal.



Finalizando, espero ter deixado perfeitamente claro ao amigo leitor a pretensão

do Ed-Art GGMI. Ele é apenas um editor gráfico que ajuda a criar telas, sem a

preocupação de empregá-las. Essa tarefa competirá ao seu programa. A sua

competência como programador é que fará com que elas se movimentem graciosamente

na TV ou fiquem estáticas. Creio que nesse mister a sua MICRO SISTEMAS poderá

emprestar valiosa colaboração pelas inúmeras dicas e rotinas já publicadas.

Aplique-se, pois você é o dono da pelota; repare que o Ed-Art não acompanha o seu

programa, ele fica para trás e não deixa marcas. E isso é muito bom.



Um forte abraço meu e de GGMI e boas artes com o Ed-Art.
Автор
Verter_bot
Загрузки
0
Просмотры
3
Расширение
zip
Размер
1.9 КБ
Хэш
ad50b0d1209f66eb18418ea326ff54fa
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх