Après qu'une erreur se soit produite, BASIC revient au niveau de commande et affiche OK. Les valeurs des variables et le texte du programme restent intacts, mais le programme ne peut pas être poursuivi et tout le contexte GOSUB et FOR est perdu.
Lorsqu'une erreur se produit dans une instruction directe, aucun numéro de ligne n'est affiché. Le format des messages d'erreur est le suivant :
Mode d'instruction | Format du message |
---|---|
Instruction directe | ?XX ERROR |
Instruction indirecte | ?XX ERROR IN YYYYY |
Dans les deux exemples ci-dessus, "XX" sera le code d'erreur. Le "YYYYY" sera le numéro de ligne où l'erreur s'est produite pour l'instruction indirecte.
Voici la liste des codes d'erreurs pouvant être retournée par l'Altair BASIC :
Abréviation | Message | Description |
---|---|---|
Version 4 Ko | ||
BS | Bad Subscribe | Ce code d'erreur permet d'indiquer une tentative de référencement d'un élément de matrice en dehors des dimensions d'une matrice. |
DD | Double Dimension | Ce code d'erreur permet d'indiquer qu'après avoir dimensionner une matrice, une autre instruction de dimension est rencontré avec le même nom de matrice. |
FC | Function Call error | Ce code d'erreur permet d'indiquer qu'un paramètre pour une fonction mathématique ou de chaîne de caractères est en dehors de l'intervalle. |
ID | Illegal Direct | Ce code d'erreur permet d'indiquer qu'on ne peut pas utilisé une instruction INPUT ou DEFFN dans le mode directe de commande. |
NF | NEXT without FOR | Ce code d'erreur permet d'indiquer que la variable dans une instruction NEXT ne correspond pas à l'instruction FOR précédemment exécuté. |
OD | Out of Data | Ce code d'erreur permet d'indiquer que l'instruction READ est exécuté mais tous les données des instructions DATA ont déjà été lu. |
OM | Out Of Memory | Ce code d'erreur permet d'indiquer que le programme est trop gros, qu'il y a trop de variables, qu'il y a trop d'instruction FOR, qu'il y a trop d'imbrication GOSUB ou qu'une expression est trop complexe. |
OV | Overflow | Ce code d'erreur permet d'indiquer que le résultat des calculs est trop gros pour être représenté dans un nombre de format BASIC. |
SN | Syntax error | Ce code d'erreur permet d'indiquer qu'il manque des parenthèses dans une expression, des caractères illégales sont présent dans une ligne, qu'une ponctuation est incorrecte ou une cause similaire. |
RG | RETURN without GOSUB | Ce code d'erreur permet d'indiquer qu'une instruction RETURN est rencontré sans qu'une instruction GOSUB ne soit exécuté. |
US | Undefined Statement | Code d'erreur permet d'indiquer qu'un instruction GOTO, GOSUB ou THEN est attendu mais n'est pas présente. |
/O | Division by Zero | Ce code d'erreur permet d'indiquer qu'une division par zéro s'est produit dans l'expression mathématique. |
Version 8 Ko uniquement | ||
CN | Continue error | Ce code d'erreur permet d'indiquer qu'une tentative de continuer un programme ne peut pas se produire après avoir écrit une nouvelle ligne. |
LS | Long String | Ce code d'erreur permet d'indiquer qu'une tentative d'utiliser un opérateur de concaténation pour créé une chaîne de caractères de plus de 255 caractères s'est produit. |
OS | Out of String Space | Ce code d'erreur permet d'indiquer qu'une sauvegarde de votre programme dans un bande de papier ou une cassette, une recharge du BASIC et allocation de trop d'espace de chaîne de caractères ou l'utilisation de chaîne de caractères trop petite s'est produite. |
ST | String Temporaries | Ce code d'erreur permet d'indiquer qu'une expression de chaîne de caractères est trop complexe. Séparé votre expression en 2 ou plusieurs parties pour résoudre le problème. |
TM | Type Mismatch | Ce code d'erreur permet d'indiquer qu'une association d'une variable numérique avec une variable de chaîne de caractères ou vice versa c'est produite. |
UF | Undefined Function | Ce code d'erreur permet d'indiquer qu'une référence vers une fonction utilisateur n'ayant jamais été définit s'est produite. |
Dernière mise à jour : Dimanche, le 13 août 2017