Listes des instructions interprétées par le langage INTERPOL
           pour ASTROL v 3.442 (mars 1997)
          ( Marc SERRAU et François COLAS )






Variables et expressions :
**************************

 Maximum de variables numériques       : 100
 Maximum de variables alphanumériques  :  50
 Nombre de lignes maximum              : 500
 Longueur maximum des lignes           :  80 caractères
 Nombre de boucles FOR NEXT            :  20
 Nombre maximum d'expression IF        :  50
 Nombre maximum de labels              :  20
 Nombre maximum de variables par ligne :  20
 Les expressions numériques peuvent utiliser des parenthèses et les
 opérateurs + - * / et ^.
 La concaténation de chaine de caractères s'effectue avec l'opérateur +


Conversions :
*************

#STR
STR  var [:n:v]               convertit la variable numérique en chaine
STR  exp [:n:v] var$          convertit l'expression numérique en chaine
                              Le format de la sortie est optionnel :
                                n longueur de la chaine
                                v longueur de la partie fractionnaire

#VAL
VAL  variable               convertit la variable chaine en nombre
VAL  expression$ variable   convertit l'expression alphanumérique en variable
                            numérique

#REM
REM commentaires









#FOR
Boucles et sous programmes :
****************************

FOR variable[=| ]début [TO] fin [STEP] pas
    Imbrication possible jusqu'à 10 niveaux
...
NEXT [variable]

#GOTO
Branchement inconditionnel :

GOTO ligne|etiquette:
etiquette:


#GOSUB
Appel d'un sous-programme. Les variables sont communes aux modules
GOSUB etiquette:
...
END
etiquette:
...
RETURN

#RETURN
Déclare le retour de sous-programme (appelé par GOSUB)






#IF
Branchement conditionnel :
**************************

IF variable comparateur variable label
IF variable comparateur variable etiquette:
IF exression comparateur expression THEN
...
[ELSE
....  ]
ENDIF









#
Entrées sorties :
*****************

#PRINT
PRINT expression_chaine [;|,] [expression_chaine...]
PRINT expression_numérique [;|,] [expression_numérique...]

#INPUT
INPUT variable[$]

#PAUSE
PAUSE [n]                Attente de n secondes. Sans paramètre
                         le programme attend une action sur le clavier.
#BEEP
BEEP

#INKEY
INKEY                    Sortie du programme par appui sur une touche
INKEY variable$          récupère dans la variable le caractère frappé

#OPENI
OPENI variable$          Ouverture d'un fichier (variable$) en lecture

#OPENO
OPENO variable$          Ouverture d'un fichier(variable$) en écriture

#OPENA
OPENO variable$          Ouverture d'un fichier(variable$) en mode ajout

#PRINTFILE
PRINTFILE  variable[$]   Ecriture de variable dans la fichier de sortie

#INPUTFILE
INPUTFILE variable[$]    Lecture de variable dans le fichier d'entrée

#CLOSE
CLOSE                    Fermeture des fichiers de lecture et d'écriture

#CLOSO
CLOSO                    Fermeture du fichier en écriture

#CLOSI
CLOSI                    Fermeture du fichier en lecture


#EXIST
EXIST Variable$ test     Test de présence d'un fichier (Variable$ avec
                         extension), la variable renvoyée (test) est à 1 si
                         le fichier existe et à 0 en cas contraire.













#
Fonctions mathématiques :
*************************

#SQR
SQR a b                  b=racine carrée de a
#LN
LN a b                  b=logarithme népérien de a
#EXP
EXP a b                  b=exponentielle de a
#SIN
SIN a b                  b=sinus de a
#COS
COS a b                  b=cosinus de a
#TAN
TAN a b                  b=tangente de a
#ATN
ATN a b                  b=arc tangente de a
#INT
INT a b                  b=partie entière de a
#ROUND
ROUND a b                b=arrondi de a
#FRAC
FRAC a b                 b=partie fractionnaire de a
#MOD
MOD a b                  b=b modulo a
#ABS
ABS a b                  b=valeur absolue de a
#POWER
POWER a b                b=b puissance a
#RANDOM
RANDOM a                 a nombre alléatoire à répartition uniforme
                           compris entre 0 et 1
#RANDOMG
RANDOMG a                a nombre alléatoire à répartition gaussiènne
                           compris entre -1 et 1
#PI
PI a                     a=pi
                         La constante PI est prédéclarée
#DECR
DECR a                   a=a-1
#INCR
INCR a                   a=a+1






#
Fonctions graphiques :
**********************

#PUT
PUT Val x y              Impose la valeur "Val" au pixel (x,y)

#GET
GET Val x y              Met dans "Val" la valeur du pixel (x,y)


#MODE320
MODE320                  Affichage en mode 320 x 200 x 256 couleurs.


#GOTOXY
GOTOXY x y               Change la position par défaut du curseur






#
Variables Internes :
********************

#ASTR1
ASTR1                    Variable interne d'Astrol N°1
                         STAT    -> Max
                         BG      -> Fond
                         AUTO    -> Seuil haut
                         CENTRO  -> Position en X
                         ACENTRO -> --
                         COUPE   -> --
                         PRINTHD -> Année
                         LOAD    -> --
                         CURSEUR + Entree -> Position en X du curseur
                         HISTO   -> Maximum de l'histogramme
                         GETC    -> Flux
                         GETF    -> --


#ASTR1$
ASTR1$                   LOAD    -> Nom de límage courante.
                         CENTRO  -> Forme de la zone de calcul




#ASTR2
ASTR2                    Variable interne d'Astrol N°2
                         STAT    -> Min
                         AUTO    -> Seuil Bas
                         CENTRO  -> Position en Y
                         ACENTRO -> --
                         COUPE   -> --
                         PRINTHD -> Mois
                         LOAD    -> --
                         CURSEUR + Entree -> Position en Y du curseur
                         GETC    -> Nombre de pixels
                         GETF    -> --

#ASTR2$
ASTR2$                   CENTRO  -> Type de l'ajustement  (gaussienne)



#ASTR3
ASTR3                    Variable interne d'Astrol N°3
                         STAT    -> Moy
                         CENTRO  -> Flux
                         COUPE   -> valeur du pixel du réticule
                         PRINTHD -> Jour
                         LOAD    -> --
                         GETC    -> Valeur d'un pixel moyen.
                         GETF    -> --





#ASTR4
ASTR4                    Variable interne d'Astrol N°4
                         CENTRO  -> Erreur en X
                         STAT    -> Position en X du Pixel maximum
                         PRINTHD -> Heure
                         LOAD    -> --
                         Curseur + Entree -> Valeur du pixel
                         GETC    -> Ecart type.
                         GETF    -> --

#ASTR5
ASTR5                    Variable interne d'Astrol N°5
                         CENTRO  -> Erreur en Y
                         STAT    -> Position en Y du Pixel maximum
                         PRINTHD -> Minute
                         LOAD    -> --
                         GETC    -> Valeur du pixel maximum
                         GETF    -> Valeur du Pixel minimum

#ASTR6
ASTR6                    Variable interne d'Astrol N°6
                         CENTRO  -> Erreur du Flux en %
                         PRINTHD -> Seconde
                         LOAD    -> --
                         GETC    -> Valeur du pixel maximum
                         GETF    -> Valeur du pixel minimum

#ASTR7
ASTR7                    Variable interne d'Astrol N°7
                         CENTRO  -> Largeur à mis hauteur en X
                         PRINTHD -> Largeur CCD
                         LOAD    -> --

#ASTR8
ASTR8                    Variable interne d'Astrol N°8
                         CENTRO  -> Largeur à mis hauteur en Y
                         PRINTHD -> Hauteur CCD
                         LOAD    -> --

#ASTR9
ASTR9                    Variable interne d'Astrol N°9
                         CENTRO  -> Ecart type du bruit de fond
                         PRINTHD -> Temps de pose
                         LOAD    -> --

#ASTR10
ASTR10                   Variable interne d'Astrol N°10
                         CENTRO -> Rapport Signal / Bruit
                         PRINTHD -> Angle horaire télescope
                         LOAD    -> --

#ASTR11
ASTR11                   Variable interne d'Astrol N°11
                         CENTRO -> Somme du flux dans le diaphragme
                         PRINTHD -> Déclinaison télescope
                         LOAD    -> --
#ASTR12
ASTR12                   Variable interne d'Astrol N°12
                         CENTRO -> valeur du fond "sous" le pixel central

#ASTR13
ASTR13                   Variable interne d'Astrol N°13
                         CENTRO -> Ecart type dans la zone de fond de ciel

#ASTR14
ASTR14                   Variable interne d'Astrol N°14
                         CENTRO -> Nombre de pixels de la zone centrale

#ASTR15
ASTR15                   Variable interne d'Astrol N°15
                         CENTRO -> Nombre de pixels de la zone de fond

#ASTR16
ASTR16                   Variable interne d'Astrol N°16
                         CENTRO -> Degré de la surface de fond

#ASTR17
ASTR17                   Variable interne d'Astrol N°17
                         CENTRO -> Largeur de la zone de calcul du flux

#ASTR18
ASTR18


#ASTR19
ASTR19


#ASTR20
ASTR20

#

