APPLICATIONSDIVERS ★ La banque mémoire du 6128 : Utilisation des 64K supplémentaires ★

La Banque de Memoire du 6128 (Amstrad Magazine)Applications Divers
Qu'est ce qu'un disque virtuel ?

Cette technique est apparue depuis quelques années sur les micro-ordinateurs professionnels (IBM PC-HP 150). Elle permet de stocker de façon temporaire le contenu de fichiers en mémoire vive (RAM). Cette partie de la mémoire vive étant vue comme une unité de disque supplémentaire. L'avantage essentiel de cette unité supplémentaire est d'être très rapide, par contre son implantation en mémoire vive la rend très sensible aux coupures de courant.

Les données à implanter sur disque virtuel devront être choisies en fonction de leur fréquence d'accès combinée à la facilité de restauration, dans la mémoire vive des informations stockées sur le disque virtuel.

Le 6128 Amstrad nous offre cette possibilité qui va faciliter considérablement le traitement des fichiers.

L'absence d'accès directs aux enregistrements de la disquette nous obligeait auparavant à lire le fichier en début de programme, le stocker dans un tableau à l'intérieur du programme, ce qui limitait à la fois la taille du programme et du fichier. La banque mémoire du 6128 utilisée en disque virtuel va nous permettre de remédier dans une large mesure à cet inconvénient.
Comment ça marche ?

Le basic résidant du 6128 est identique à celui du 664 par contre des RSX (instructions supplémentaires) sont fournies pour gérer en disque virtuel les 64K supplémentaires. Ces instructions sont installées par l'intermédiaire d'un programme fourni sur la disquette, système appelé “Bankman”. Ce programme doit être éxécuté avant toute utilisation de la banque mémoire.

Ce programme charge des RSX qui permettent de découper la mémoire additionnelle en segments de longueur fixe, de charger cette mémoire, de rechercher des informations et bien entendu de relire les données stockées auparavant. Ces instructions comme tout RSX sont appelées au moyen de la double barre verticale se trouvant sur la touche à gauche de la lettre P. On peut regretter que ces instructions supplémentaires n'aient pas été implantées dans la ROM, en effet elles réduisent l'espace adressable du Basic avec tous les inconvénients associés, c'est-à-dire que toutes les routines utilisateurs implantées entre 42619 et 41302 sont devenues inutilisables. Les temps de réponse de ce disque virtuel sont sans commune mesure avec ceux d'un disque classique et cela ouvre de nombreuses possibilités dans le traitement des fichiers. Exemple sur un fichier virtuel de 1024 occurences de 64 octets :

— Les temps de transfert entre banque mémoire et disque sont fortement dépendants de la disquette mais restent très corrects. En effet quel que soit le sens du transfert on enregistre un temps d'environ une seconde par kilo-octet.

— Le temps de recherche en mémoire vive d'une quelconque occurence est impressionnant : 0,6 seconde.

Les instructions

Amstrad propose les quatres instructions standard de gestion de fichier.

Ouverture ............ BANKOPEN
Ecriture ............. BANKWRITE
Lecture .............. BANKREAD
Recherche ............ BANKFIND

Ces instructions sont détaillées dans le manuel utilisateur du 6128, aussi il ne sera fait dans cet article qu'une description sommaire des paramètres.

|BANKOPEN : ouverture de la banque mémoire en un fichier dont les enregistrements ont une longueur égale à P1. Si un fichier a déjà été chargé, cette instruction n'efface pas la mémoire. Cette possibilité peut permettre des combinaisons astucieuses de stockage de fichiers de longueurs différentes (à utiliser avec précaution).

|BANKWRITE, @P1, P2, P3 : écriture d'un enregistrement.

P1 : code retour égal à P3 si ok.
P2 : chaîne alphanumérique à écrire.
P3 : numéro d'enregistrement du fichier virtuel.
|BANKREAD,@P1, P2, P3 : lecture d'enregistrement.
P1 : code retour égal à P3 si ok.
P2 : chaîne alphanumérique à lire,
P3 : numéro d'enregistrement du fichier virtuel,
|BANKFIND, @P1, P2, P3, P4 : recherche d'un enregistrement.
P1 : code retour
– positif si l'occurence recherchée est trouvée ;
– négatif si non trouvé.
P2 : chaîne alphanumérique à rechercher.
P3 : numéro d'enregistrement de départ.
P4 : numéro d'enregistrement de fin.

Remarques : les chaînes alphanumériques en lecture doivent être dimensionnées avant les commandes externes au Basic.

Le numéro d'enregistrement commence à zéro.

Lors d'une recherche les caractères non significatifs peuvent être masqués par des caractères nuls (CHR$(0)).

Un exemple d'utilisation

Le programme proposé permet la gestion d'un fichier de 900 clients environ. Il comporte deux parties : le chargement et l'interrogation sélective.

Ce programme est écrit séquentiellement afin de mieux situer l'utilisation des différentes instructions de la banque mémoire. Pour toute utilisation future nous vous conseillons de le réorganiser en utilisant des sous-programmes pour appeler ces instructions. Bon courage.

AMSTRAD MAGAZINE n°5

★ EDITEUR: Amstrad Magazine
★ ANNÉE: 1985
★ CONFIG: 128K + AMSDOS + BANKMAN
★ LANGAGE:
★ LiCENCE: LISTING
★ AUTEUR: Régis Soyer
 


★ AMSTRAD CPC ★ DOWNLOAD ★

Aucun fichier de disponible:
» Vous avez des fichiers que nous ne possédons pas concernent cette page ?
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Hardware » Romba
» Hardware » Memoire - Vortex Expansion Board (Popular Computing Weekly)
» Hardware » Memoire - Microgenic - Advanced Eprom Expansion
» Hardware » Bee card
» Hardware » Memoire - E109 - Extension 64k (Jagot et Leon)
» Hardware » Memoire - Microgenic - Advanced Eprom Expansion Board
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Dump, Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» Vous avez des infos personnel ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.732-desktop/c
Page créée en 180 millisecondes et consultée 2357 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.