Les articles Amstrad >Les produits Amstrad > Les CPC > Programmation > BASIC > Les messages d'erreur du BASIC (cpc-hardware)

Les messages d'erreur du BASIC (cpc-hardware)

Source : GUIDE de L'UTILISATEUR
Auteur : AMSTRAD & AMSOFT

Mise en page : Parano-Sprite
Version : 1.0 - 16/01/2005
~ Version Html © CPC-HardWare 2005 ~ 



 


    Unexpected NEXT ( NEXT inattendu )
    Une commande NEXT a été rencontrée sans que la commande FOR n'ait lancé la boucle ou bien la variable suivant NEXT ne correspond pas à celle de la boucle FOR.

     

    Syntax Error ( erreur de syntaxe )
    Le BASIC ne comprend pas la ligne à cause d'une construction non permise (très souvent une faute de frappe).

     

    Unexpected RETURN ( RETURN inattendu )
    Une commande RETURN survient sans qu'il y ait de sous-programme en cours.

     

    DATA exhausted ( il n'y a plus de donnees ( DATA ))
    Une commande READ a essayé de lire une ligne de DATA épuisée.

     

    Improper argument ( argument incorrect )
    Erreur d'ordre général. L'argument d'une fonction ou le paramètre d'une commande n'est pas acceptable.

     

    Overflow ( dépassement arithmétique )
    Se produit lorsqu'une opération arithmétique dépasse les limites. Le chiffre en virgule flottante est devenu trop grand (superieur à 1.7EÎ38) ou a fait l'objet d'une tentative de conversion en un nombre entier trop grand.

     

    Memory full ( mémoire saturée )
    Le programme ou ses variables sont trop grands pour la mémoire ou la structure des boucles est trop compliquée (trop de GOSUB, WHILE et FOR imbriqués). A chaque fichier ouvert est affecté un tampon de mémoire, ce qui peut être une cause de limitation pour la commande MEMORY.

     

    Line does not exist ( ligne inexistante )
    Le numéro de ligne référencé n'existe pas en mémoire.

     

    Subscript out of range ( indice hors limite )
    Un des indices de votre tableau est trop grand ou trop petit.

     

    Array already dimensioned ( tableau déjà dimensionné )
    Un des tableaux d'une instruction DIM a déjà été défini.

     

    Division by zero ( division par zéro )
    L'ordinateur n'aime pas diviser par zéro, que ce soit réel, entier, ect...

     

    Invalid direct command ( commande directe non valable )
    La commande n'est pas acceptable en mode direct.

     

    Type mismatch ( types de variable ne correspondant pas )
    On a donné une valeur numérique pour une chaîne alphanumérique ou vice-versa ou un nombre non valable a été découvert par une commande READ ou INPUT.

     

    String space full ( espace reservé aux chaines saturé )
    Il y a tellement de chaînes qu'il n'y a plus de place, même après une remise en ordre.

     

    String too long ( chaine trop longue )
    Une chaîne a plus de 255 caractères, ce qui peut arriver lors d'une concaténation de chaînes.

     

    String expression too complex ( chaine trop compliquée )
    Des expressions de chaînes peuvent produire des valeurs intermédiaires qui, si elles sont trop nombreuses, conduisent le BASIC à donner ce message.

     

    Cannot CONTinue ( on ne peut pas CONTinuer )
    Le programme ne peut pas poursuivre son exécution avec CONT, qui sert après une commande STOP, [ESC][ESC] ou une erreur. Notez que si le programme a été modifié entre-temps, il est impossible de le relancer par cette commande.

     

    Unknown user function ( fonction inconnue au bataillon )
    On a oublié de définir la fonction FN avec la commande DEF FN auparavant.

     

    RESUME missing ( commande RESUME absente )
    On a trouvé la fin de programme alors que celui-ci procédait à un traitement d'erreur ( à la suite d'une déclaration ON ERROR GOTO ).

     

    Unexpected RESUME ( RESUME inattendu )
    On tombe sur une commande RESUME sans être dans un sous-programme de type ON ERROR GOTO.

     

    Direct command found ( commande directe tombant du ciel ! )
    En chargeant un programme, une ligne sans numéro s'est présentée.

     

    Operand missing ( operande absent )
    Le BASIC vient de tomber sur une expression incomplète.

     

    Line too long ( ligne trop longue )
    Le BASIC n'accepte pas les lignes de plus de 255 caractères.

     

    EOF met ( rencontre d'une fin de fichier )
    EOF = End Of File = fin de fichier ; le programme a effectué une tentative de lecture après une fin de fichier.

     

    File type error ( erreur dans le type de fichier )
    Le fichier n'est pas du type requis. OPENIN peut seulement ouvrir des fichiers de texte ASCII. LOAD, RUN, etc., ne fonctionnent qu'avec des fichiers produits par SAVE.

     

    NEXT missing ( NEXT manquant )
    On ne peut pas trouver le NEXT qui correspond à une commande FOR.

     

    File already open ( fichier déjà ouvert )
    Une commande OPENIN ou OPENOUT est exécutée avant que le fichier déjà ouvert n'est été fermé.

     

    Unknown command ( commande inconnue )
    Le BASIC ne trouve pas de références à cette commande externe.

     

    WEND missing ( WEND manquant )
    La boucle commencée par WHILE n'est pas terminée par WEND.

     

    Unexpected WEND ( WEND innatendu )
    Un WEND est découvert en dehors d'une boucle WHILE, ou un WEND ne correspond pas au WHILE de la boucle.

     

    File not open ( fichier non ouvert )
    ( Voir paragraphe ci-dessous, "Erreurs sur disquette" ).

     

    Broken in ( interrompu )
    ( Voir paragraphe ci-dessous, "Erreurs sur disquette" ).

     

    Erreurs sur disquette en AMSDOS

    Plusieurs erreurs peuvent se produire lors du traitement des opérations d'archivage. Bien que le BASIC les regroupe sous le numéro d'ERReur 32, vous pouvez obtenir de plus amples informations en appelant la fonction DERR.
    Voici la signification des valeurs qu'elle renvoie:

     
    Erreur AMSDOS    Valeur DERR    Source de l'erreur
    0    0 ou 22    Activation de [ESC]
    14    142 ( 128+14 )    Etat du canal non valable
    15    143 ( 128+15 )    Fin de fichier matérielle
    16    144 ( 128+16 )    Mauvaise commande, généralement nom de fichier incorrect
    17    145 ( 128+17 )    Fichier déjà existant
    18    146 ( 128+18 )    Fichier non existant
    19    147 ( 128+19 )    Catalogue saturé
    20    148 ( 128+20 )    Disquette pleine
    21    149 ( 128+21 )    Changement de la disquette avec fichiers ouverts
    22    150 ( 128+22 )    Fichier en lecture seulement
    26    154 ( 128+26 )    Fin de fichier logicielle

     

     

    Si AMSDOS a déjà rapporté une erreur, le bit 7 a pris la valeur 1, décalant celle de DERR de 128.

     

    Les autres valeurs rapportées par DERR proviennent du contrôleur de la disquette, le bit 6 étant toujours sur 1. Le bit 7 indique si AMSDOS a rapporté l'erreur ou non ( voir ci-dessus ).


    Voici la signification de chacun des bits :
    Bit    Signification
    0    Adresse manquante.
    1    Ecriture impossible. Disquette protégée.
    2    Pas de donnée. Secteur introuvable.
    3    Unité non prête. Pas de disquette dans l'unité.
    4    Surcharge.
    5    Erreur de donnée. Erreur CRC (Cyclic Redundancy Check ).
    6    Toujours a 1 pour indiquer une erreur venant du contrôleur de disquette.
    7    Sur 1 si AMSDOS a déjà rapporté l'erreur.

     

     

    ERR peut envoyer 31 si vous avez tenté l'accès à une disquette sans aucun fichier ouvert.


    Une procédure clasique d'utilisation de ERR et DERR consiste à inclure l'instruction ON ERROR GOTO afin d'appeler un sous-programme déterminant la valeur ( 31 ou 32 ) de ERR puis, en cas d'erreur 32, utilisant l'indicateur DERR pour afficher la nature exacte de l'erreur.

     


    Par exemple :

    10 ON ERROR GOTO 1000
    20 OPENOUT "monfichier.asc"
    30 WRITE #9,"donnee-test"
    40 CLOSEOUT
    50 END
    1000 amsdoserr=(DERR AND &7F):REM bit 7 force a 0
    1010 IF ERR<31 THEN END
    1020 IF ERR=31 THEN PRINT "etes-vous sur d'avoir tape la ligne 20 ?":END
    1030 IF amsdoserr=20 THEN PRINT "Il n'y a plus de place sur la disquette ":END
    1040 IF amsdoserr=&X1000010 THEN PRINT "placez une disquette non protegee dans l'unite, puis appuyer sur n'importe quelle touche ":WHILE INKEY$="":WEND:RESUME
    1050 END

  Voir cet article au format PDF Imprimer cet article

RECHERCHE
LANGUE
* Donathon 2017 *

145 €

 

 

 

 En savoir plus

Le Chat
 Smiles  Loading...
EN LIGNE
9 Personne(s) en ligne (2 Personne(s) connectée(s) sur Les articles Amstrad)

Utilisateur(s): 4
Invité(s): 5

Moonbeam, Golem13, PacoRabanne, rity, Plus ...
Musiques CPC

Lecteur MP3
CPC-Scene Radio

 

 

ROLAND RADIO

Connexion
Identifiant :

Mot de passe :

Se souvenir de moi



Mot de passe perdu ?

Inscrivez-vous !

 

Informations
________________________________

Suivre Amstrad.eu

________________________________

Autres Créations web

________________________________

 

Declaration CNIL : 1005884

Association : 0540200002843

Charte

Avertissements

Plan du site

Carte de France des membres

 

 

 

Facebook.

Twitter.

RSS forum.

RSS News.

Contact.

 

Gaston-Phoebus.com

Amstrad.eu

untour.fr

Cathydeco.com

Higoogle

Harloup.fr

** Faire un don **

 

Conception Phenix © 2000 - 2014