Manuel Amos Professional  Table des matières  Index

Banques mémoire


Une valeur de zéro est retournée pour toute banque qui n'a pas été définie. Par exemple :

E> Load Fsel$("*.Abk"," ","Charger une banque d'objets") : Rem Banque 1
   Print "Il y a ";Length(1);" images disponibles."

START
fonction : retourne l'adresse d'une banque mémoire
address=Start(numéro de banque)

Utilisez la fonction START pour afficher l'adresse de la zone mémoire allouée à une banque, dont le numéro est spécifié entre parenthèses. L'adresse restera généralement fixe pendant toute la durée d'un programme, mais elle peut être modifiée par une commande BANK SWAP.

Si le numéro de banque spécifié n'existe pas, AMOS Professional affichera un message d'erreur "Bank not reserved". Ceci peut être évité en vérifiant l'existence d'une banque avec la fonction LENGTH, comme ceci :

E> If Length(N)>0: Rem donner à N un numéro de banque approprié
    Print "Adresse de la banque : ";Start(N)
   Else
    Print "Cette banque n'existe pas !"
   End If

Les fonctions FAST FREE et CHIP FREE qui servent à connaître la quantité de mémoire libre disponible ont déjà été expliquées. Elles ne doivent pas être confondues avec la fonction FREE, qui retourne la quantité de mémoire libre dans la zone des variables.

Récupération des banques mémoire d'un programme accessoire

Toutes les banques mémoire utilisées par un accessoire sont indépendantes du programme principal. Les utilisateurs d'AMOS déjà existants verront que le système de récupération des banques mémoire a été largement amélioré pour les programmeurs AMOS Professional.

La commande PRG UNDER permet de vérifier si un programme est accessible "en dessous" du programme en cours, et si c'est le cas, ses banques mémoire peuvent être récupérées dans le programme actuel. Autant de programmes que la mémoire le permet peuvent être exécutés via la commande PRUN, et tous les détails de ces commandes ainsi que la communication entre programmes sont expliqués au Chapitre 11.4. Voici les instructions et fonctions disponibles pour la récupération des banques :

BLENGTH
fonction : retourne la longueur d'une banque mémoire d'un programme précédent
length=Blength(numéro de banque)

Cette fonction permet d'obtenir la longueur de la banque indiquée d'un programme AMOS Professional précédent, si cela est possible. Une valeur de zéro sera retournée si la banque spécifiée n'a pas été définie dans le programme précédent, ou s'il n'y a pas de programme précédent accessible (PRG UNDER= 0).

Retour    Suivant
05.09.09