                                  COMPOT

                      par Vincent Pomey (Tricky/Medron)
                               Version 0.8

        COMPOT est du domaine public, vous pouvez le copier librement
(sans le faire payer) ou le mettre en tlchargement.

        Si vous avez des problmes en l'utilisant, vous pouvez me
contacter sur mon serveur (1) 45 44 42 24 toute la journe. Les pages
de ce serveur ont d'ailleurs toutes t ralise ave ce programme.

        Il est crit en Pascal,  l'origine sur Apple ][ puis
a t transfr sur Atari. Tout se passe sur le Minitel, reli par
l'interface srie  l'Atari : visualisation et commandes. Une image
au format Videotex est stocke comme une suite de codes  envoyer
au Minitel. Le programme peut rcuprer des images tlcharges,
ou composes avec d'autres programmes du moment qu'il sauve l'image
comme un gros pat de Videotex. Plusieurs modes permettent de dessiner:
Texte et Mosai, pour crire et dessiner en statique, et Anim pour
animer une image dja compose en statique. Ce mode permet uniquement
d'afficher l'image statique stocke en mmoire dans l'ordre que
l'on veut, avec quelques autres options.









Mode Mosai/Texte:
-----------------

Permet de dessiner une image ou d'crire du texte avec tous les attributs 
Videotex.

Au clavier:

  Rptition : raffiche la page.
  Envoi : Saisie d'une commande (voir les commandes en dessous)
  Pav numrique : Dplacement   1 2 3 4 6 7 8 9   : Mouvement
                                 5   : Retour au dbut de l'cran
                                 *   : Extrmite gauche
                                 #   : Extrmite droite
                                 0   : Extrmite basse
                                    : Extrmite haute
  En mode mosaique  :  A Z slctionne les parties du caractre mosaique.
                       Q S (aucun cho avant la validation par Espace)
                       W X
                       Espace pour valider la pavette.
                       + Les touches dfinient par l'utilisateur
                          ( l'initialisation:   , . ' ) pour les
                          caractres mosaiques les plus courants.
  En mode texte : Tout le clavier sauf les touches de dplacements et de
                  fonctions.

  Les attributs courants sont affichs en ligne 0, le chiffre signifie
    0 taille normale,
    1 double hauteur,
    2 double largeur,
    3 double taille,
  L pour lignage, I pour inversion, C pour clignotement,
  ces lettres sont inverss si l'attribut est valid,
  puis la couleur d'encre et la couleur de fond.

  En mode Mosai, les attributs Inversion et Taille ne sont pas
  disponibles (normes Videotex).
  
Commandes:

CLI        : Inversion de l'attribut clignotement.
LIG        : Inversion de l'attribut lignage.
INV        : Inversion de l'attribut inversion en mode Texte et des
             couleurs en mode Mosai.
ENCRE Noir : Slection couleur d'criture.
      Bleu
      Rouge
      Magenta
      Vert
      Cyan
      Jaune
      Blanc
FOND       : Slection couleur de fond.
TAILLE n   : Slction taille n=0 Normale
                              n=1 Double hauteur
                              n=2 Double largeur
                              n=3 Double taille.
ANIM       : Passage en mode animation.
TEXTE      : Passage en mode texte.
MOSAI      : Passage en mode mosaique.
EFFACE     : Efface toute l'image.
REPETE     : Rpte le caractre sous le curseur dans la zone que l'on
             dfinira aprs.
COUPER     : Mmorise une zone du dessin et remplie cette zone d'espaces
COPIER     : Mmorise une partie du dessin.
COLLER     : Recopie le dernier dessin mmoris.
VOIR       : Affiche le dessin mmoris par Copier/Couper.
DEF c[AZQXS]:Dfini la touche c avec le caractre mosaique dfini aprs
             par [AZQXS]. En mode mosaique, il suffira de taper c pour
             afficher cette mosaique.
CHANGER    : Changement des couleurs et des attributs d'une partie du
             dessin. Un tableau apparait : entrer l'ancienne valeur de
             chaques attributs (couleur, ou Vrai/Faux pour le lignage
             par exemple) puis la valeur de remplacement.
CHR  cod   : Pour afficher des caractres inaccessibles au clavier, cod
             est son code ascii (32  127).
SPE  cod   : Ecrit le caractre spcial n cod (cf table SS2).
             Il s'agit des caractres Videotex comme les lettres
             accentues, les flches etc... Vous pouvez galement les
             taper au clavier si celui-ci le permet.
ECR texte  : Ecrit directement texte sur l'image  la position du
             curseur. Permet d'entrer des chiffres.
GETANIM    : Interprte l'animation (prsente dans le mode Anim) et
             superpose l'image cre avec l'ancienne image statique.
MIN        : Passe le minitel en mode minuscule.
MAJ        : Passe le minitel en mode majuscule.
LOAD nom   : Charge l'image "nom" (ventuellement superpose avec le dessin
             actuel si elle ne contient pas de code effacement cran).
SAVE nom   : Sauve l'image.
DELETE nom : Efface le fichier.
FIN        : Sortie du programme.
CURS on/off: Choix entre un faux curseur lors de la saisie d'une commande
             permettant de se situer mais ralentissant l'affichage aprs
             la commande ou rien.
?          : Affiche les attributs du caractre sous le curseur et
             GUIDE permet de les slectionner comme attributs courants.
*          : Slectionne les attributs du caractre sous le curseur comme
             attributs courants.
??         : Affiche les couleurs courantes et celles du caractre
             sous le curseur en toutes lettres.
M4800      : La vitesse de transmission du Minitel est normalement de
M1200        1200 bauds. Avec un Minitel 1B, on peut aller jusqu'
             4800 bauds entre l'Atari et le Minitel. Aprs M4800, tapez
             sur votre Minitel Fnct-P 4, et pour revenir en normal,
             aprs M1200 tapez Fntc-P 1. Si l'affichage en 4800 bauds est
             beaucoup plus agrable, n'oubliez pas que l'affichage se fait
             normalement  1200 bauds (pour les animations surtout...)


Surtout ne pas appuyer sur une touche pendant que l'image se
raffiche juste aprs l'ordre SAVE car elle ne serait pas
sauvegarde entierement.

En mode Texte, les attributs Lignage et couleur de fond sont gres 
par zones et non par caractres. Une zone est spare par des 
espaces ou des caractres mosaiques. Il faut donc pour que ces 
attributs soient valids qu'ils commencent par un espace avec 
l'attribut slectionn et qu'il se termine par un espace avec 
l'attribut non slectionn pour remettre les choses en ordre.

Il est toujours prfrable de rafficher la page aprs de 
telles manipulations pour voir le vritable rsultat, le Minitel grant 
tout cela assez bizarrement...

L'attribut Inversion permet de dcaler les cycles de clignotement :
pendant qu'un texte clignotant non invers est allum, un texte
clignotant mais invers est teint, et vice versa.





Mode Animation:
---------------

Permet de crer une animation  partir du dessin mmoris dans le mode
Texte/Mosai. L'animation est sauv dans une mmoire diffrente de ce
dessin. Les ordres LOAD et SAVE dans ce mode s'appliquent donc 
l'animation dynamique et non  l'image statique.

Clavier:

Suite  : Equivalent de la commande ADD.
Retour : Equivalent de la  squence ADD, Espace, Envoi (Ajoute juste un
caractre).
Envoi  : Saisie commande.
Pav numrique : Dplacement du curseur.


Commandes:

EFFACE     : Efface l'animation.
QUITTE     : Revient dans l'ancien mode Mosai/Texte et raffiche l'image.
TEXTE      : Repasse directement en mode texte.
MOSAI      : Repasse directement en mode mosaique.
FIN        : Sortie du programme.
IMAGE      : Affiche l'image statique dessine en mode Mosai/Texte.
ANIM nb    : Affiche l'animation. Si un nombre nb suit la commande, seuls
             les nb premiers codes seront affichs, sinon toute
             l'animation sera transmises.
DUMP nb    : Affiche l'animation comme ANIM mais en affichant galement
             les valeurs des octets transmis au minitel sur l'cran
             de l'Atari (si vous interrompez l'affichage en pressant
             une touche, le numro dernier octet affich est affich
             sur la ligne 0 du Minitel).
SAVE nom   : Sauve l'animation.
LOAD nom   : Charge une nouvelle animation.
READ nom   : Ajoute une animation (ou n'importe quelle squence Videotex)
              la suite de l'animation actuelle.
DELETE nom : Efface le fichier nom.
VOIR       : Affiche la partie d'image mmorise par Couper/Copier.
ADD        : Ajout de caractres dans l'animation.
             On se dplace sur l'image et on slectionne les caractres
              afficher pour indiquer l'ordre d'apparition.
               Dplacement curseur: 1 2 3 4 5 6 7 8 9 *
               Ajout dans l'anim du caractre sous le curseur:
                                 Espace
               Effacement de la fin de la ligne (code Cancel): 0
               Affiche  la position du curseur le dessin memorise: E
                       (mmoris par Couper/Copier)
               Restaure l'image normale  l'endroit du dernier E: C
               Equivalent C puis E pour dplacer la figure
                                 (l'affichage est optimis): D
               Annulation efface tout ce qui vient d'etre saisie.
ADD cod    : Ajout du code Ascii cod (en dcimal) dans l'animation. 
             Ceci permet d'avoir accs aux commandes protocoles (par 
             exemple passage en mode minuscule) pendant l'affichage d'une 
             page, ou de raliser une animation originale en utilisant des 
             particularits du Videotex, telle que le masquage et le 
             dmasquage de zones etc...
ADD NOPOS  : Ajout de caractres dans l'animation mais sans
             introduire de codes de positionnement du curseur au dbut,
             comme c'est le cas autrement. Permet des animations
             controles manuellement en combinaison avec la commande
             ADD cod.
INSERT nb  : Equivalent de ADD (seul) mais l'ajout de caractres
             se fera non pas  la fin de l'animation mais au niveau
             de l'octet nb (insertion des codes au milieu de l'animation).
             Attention cependant aux consquences (insertion au milieu
             d'une squence Videotex, ou non rinitialisation)
CLS        : Ajoute un code d'effacement d'cran dans l'animation.
BLK        : Slctionne le type de caractre affich lors de l'ajout
  Off        d'un caractre  l'animation (ADD + Espace). Blanc/Noir:affiche
  Blanc      un carr blanc ou noir pour valider, Off : Affiche juste
  Noir       le caractre ajout  l'animation (on le remarque si l'image
  [rien]      l'cran actuellement est l'animation et non l'image
             statique. BLK seul donne le mode actuel.
DEL nb     : Efface les nb derniers caractres de l'animation.
TRUNC nb   : Fixe le nombre de caractres de l'animation  nb.
CODE nb    : Affiche le code Videotex nnb de l'animation. SUITE/RETOUR
             pour se dplacer dans les codes, SOMMAIRE pour sortir, ENVOI
             pour modifier l'octet, ANNULATION pour le supprimer,
             et GUIDE pour en insrer un juste avant.
GETIMAGE n : Rajoute toute une partie de l'image statique dans
             l'animation. On choisit le type d'affichage (sens,
             enroul etc...) de 1  6 avec n. Si pas de n prsis,
             affichage standard de haut en bas.
COLOR      : Permet de faire varier la couleur du dessin mmoris
             (Copier/Couper) dans l'animation  l'emplacement du curseur.
             On choisit la couleur de dpart et d'arrive et le
             changement se fait dans l'ordre d'intensit lumineuse sur
             un minitel noir et blanc. Cela permet de faire apparaitre ou
             disparaitre une figure simple (avec une seule couleur 
             l'origine) en plusieurs tapes comme un fondu enchain.
?          : Affiche les coordones du curseur.

NB:Ici aussi l'affichage peut-tre interrompu en tapant sur une touche
mais il faut viter de le faire lors de GETIMAGE car des codes seraient
perdu.

Il faut galement penser aux espaces lors de l'utilisation des 
attributs Lignage et encre de fond sur des caractres alphanumeriques. 
Ils doivent tre valids lors de l'ajout de caractres (commande ADD).

A propos des noms de fichiers : L'extension par dfaut est VDX mais
on peut donner un nom avec une autre extension. LOAD et SAVE s'abrgent
L et S pour permettre de donner des noms de fichiers plus longs (sous
catalogues).

DANGER DANGER:Toute erreur de disque plante le programme.
