#define NB_OUTIL 18
#define X_MIN 0
#define Y_MIN 0
#define X_MAX 45
#define Y_MAX 35
#define NON 0
#define OUI 1
#define RIEN 2
#define ROUGE 0
#define VERT 1
#define BLEU 2
#define BLANC 3
#define INCORRECT -1
#define INC +1
#define DEC -1
#define LG_INFO 150
#define HT_INFO 150
#define X_MAX 45
#define Y_MAX 35
#define TAILLE_CHEMINFICHIER 32
#define NB_DESSIN_TABLEAU 32
#define EXT_CODAGE ".DAT"
#define NB_PORTERVB 1419
#define NB_SERPENT 21
#define TETE 0
#define CORPS 1
#define QUEUE 2
#define BOB(x,y,z) element_snakles[((x*3)-2)+y]+(10*z)+BOB_SNAKLES
#define CL_ROUGE 0
#define CL_VERT 1
#define CL_BLEU 2
#define CL_ORANGE 3
#define CL_BLANC 4
#define MAX_PASTILLE 38
#define SELECTION_PASTILLE_ON 243
#define SELECTION_PASTILLE_OFF 247
#define NB_SERPENT_RVB 20
#define LG_SERPENTS 15
#define NB_ELEMENT_ESQUISSE_SERPENT 36
#define BUFSIZE_SANS_CADRE 1419
#define BUFSIZE_AVEC_CADRE 1575
#define X_TAB_APERCU 3
#define Y_TAB_APERCU 13
#define X_TAB_PASTILLES_SERPENTS 5
#define Y_TAB_PASTILLES_SERPENTS 31
#define X_TAB_DESSINS 5
#define Y_TAB_DESSINS 31
#define NB_TABLEAU_X 6
#define X_TABLEAUX 8
#define Y_TABLEAUX 48
#define LG_TABLEAU 44
#define HT_TABLEAU 34
#define X_ECART 52
#define Y_ECART 44
#define OBST_BORDURE 1
#define OBST_DESSIN 2
#define OBST_PORTE_BLANCHE_MOBILE 3
#define OBST_PORTE_ROUGE_FERMEE 4
#define OBST_PORTE_VERTE_FERMEE 5
#define OBST_PORTE_BLEU_FERMEE 6
#define OBST_PORTE_ROUGE_OUVERTE 7
#define OBST_PORTE_VERTE_OUVERTE 8
#define OBST_PORTE_BLEU_OUVERTE 9
#define OBST_CLE_ROUGE 10
#define OBST_CLE_VERTE 11
#define OBST_CLE_BLEU 12
#define OBST_BOULE_BLEU 13
#define OBST_DIAMANT 14
#define OBST_BOULE_VERTE 15
#define OBST_BOULE_ROUGE 16
#define OBST_ETOILE_VIE 17
#define OBST_ETOILE_MORT 18
#define OBST_SERPENT_SOUPLE 19
#define OBST_SERPENT_RAIDE 20
#define OBST_TEMPS_PLUS 21
#define OBST_TEMPS_MOINS 22
#define OBST_IMMORTALITE 23
#define OBST_MORTALITE 24
#define OBST_AVANCE_LENTE 25
#define OBST_AVANCE_RAPIDE 26
#define OBST_VITESSE_RAPIDE 27
#define OBST_VITESSE_MOYENNE 28
#define OBST_VITESSE_LENTE 29
#define OBST_STOP_SERPENT_ROUGE 30
#define OBST_STOP_SERPENT_VERT 31
#define OBST_STOP_SERPENT_BLEU 32
#define OBST_SENS_SERPENT_ROUGE 33
#define OBST_SENS_SERPENT_VERT 34
#define OBST_SENS_SERPENT_BLEU 35
#define OBST_VITESSE_SERPENT_ROUGE 36
#define OBST_VITESSE_SERPENT_VERT 37
#define OBST_VITESSE_SERPENT_BLEU 38
#define X_MIN_CHARGER 8
#define Y_MIN_CHARGER 16
#define X_MAX_CHARGER 52
#define Y_MAX_CHARGER 38
#define X1_NUM_CHARGER 11
#define Y1_NUM_CHARGER 30
#define X_MIN_INITIALISER 60
#define Y_MIN_INITIALISER 16
#define X_MAX_INITIALISER 104
#define Y_MAX_INITIALISER 38
#define X1_NUM_INITIALISER 63
#define Y1_NUM_INITIALISER 30
#define X_MIN_COPIER 112
#define Y_MIN_COPIER 16
#define X_MAX_COPIER 156
#define Y_MAX_COPIER 38
#define X1_NUM_COPIER 115
#define Y1_NUM_COPIER 30
#define X2_NUM_COPIER 144
#define Y2_NUM_COPIER 30
#define X_MIN_PERMUTER 164
#define Y_MIN_PERMUTER 16
#define X_MAX_PERMUTER 208
#define Y_MAX_PERMUTER 38
#define X1_NUM_PERMUTER 167
#define Y1_NUM_PERMUTER 30
#define X2_NUM_PERMUTER 196
#define Y2_NUM_PERMUTER 30
#define X_MIN_VERIFIER 216
#define Y_MIN_VERIFIER 16
#define X_MAX_VERIFIER 260
#define Y_MAX_VERIFIER 38
#define X1_NUM_VERIFIER 219
#define Y1_NUM_VERIFIER 30
#define X_MIN_ANALYSER 268
#define Y_MIN_ANALYSER 16
#define X_MAX_ANALYSER 312
#define Y_MAX_ANALYSER 38
#define SELECTION_ELEMENT_ON 240
#define SELECTION_ELEMENT_OFF 0
#define BORDURES 0
#define X_MIN_BORDURES 7
#define Y_MIN_BORDURES 34
#define X_MAX_BORDURES 231
#define Y_MAX_BORDURES 392
#define X_NB_BORDURES 2
#define Y_NB_BORDURES 30
#define LG_BORDURES 112
#define HT_BORDURES 11
#define X_ECART_BORDURES 113
#define Y_ECART_BORDURES 12
#define FONDS 1
#define X_MIN_FONDS 234
#define Y_MIN_FONDS 34
#define X_MAX_FONDS 312
#define Y_MAX_FONDS 392
#define X_NB_FONDS 10
#define Y_NB_FONDS 30
#define LG_FONDS 7
#define HT_FONDS 11
#define X_ECART_FONDS 8
#define Y_ECART_FONDS 12
#define DESSINS_MAX_LG 12
#define DESSINS_MAX_HT 12
#define DESSINS_SELECT_COUL 240
short Lire_Tableau_Encours (void);
void Ecrire_Tableau_Encours (short);
OCTET X_Case (void);
OCTET Y_Case (void);
void Selection_Pastille (OCTET,OCTET);
OCTET Lire_Case (OCTET*,OCTET,OCTET);
void Ecrire_Case (OCTET*,OCTET,OCTET,OCTET);
void Afficher_Case (OCTET,OCTET,OCTET,OCTET);
void Afficher_Cases (OCTET*,OCTET,OCTET,OCTET,OCTET,OCTET);
short Traiter_Fleche (OCTET,short,
                      short,short,short,
                      short,short,short,short,
                      short,short,OCTET);
void Option (OCTET,OCTET,short,short,short,short);
OCTET Test_Option (short,short,short,short);
void Nombre_Option (short,short,OCTET,OCTET,short);
void Convertir_Structure_Buffer (void);
void Afficher_Serpent_Buffer (OCTET,OCTET,OCTET,OCTET,OCTET);
void Verifier_Buffers (void);
OCTET Convertir_Buffer_Structure (void);
char Verifier_Serpent_Buffer (OCTET,OCTET,OCTET);
void Rechercher_Conflit_Serpents_Bord (void);
void Afficher_Dessin (short,short,OCTET,OCTET);
void Calculer_Surface (OCTET,OCTET,OCTET*,OCTET*);
void Annuler_Dessin_Structure (OCTET);
void Verifier_Corriger_Dessin (void);
short Conv_Coord_Num (OCTET,short,short);
void Conv_Num_Coord (OCTET,short,short*,short*);
OCTET Numero_Pastille (void);
void Traiter_Outils (void);
void Appeler_Outils (void);
void Initialiser_Outils (void);
void Init_Undo (void);
void Changer_Page (OCTET);
short Totaliser_Pastilles (OCTET);
void Save_Undo (void);
void Load_Undo (void);
void Afficher_Cadre (OCTET);