CODING ★ BASIC TECHNIQUE DU CHAINE MERGE ★

Basic Technique du Chaine Merge

Cette commande Basic permet, dans un programme en marche, de 'se grossir” d'un sous-programme tout en conservant les variables en cours puis, après usage, de l'effacer afin de charger un autre sous-programme. Ainsi, la RAM n'est pas occupée par des modules non en service, d'où plus de place pour le gros fichier à traiter. Disons tout de suite que le lecteur de disquette s'impose car c'est sans grand intérêt avec les cassettes.

UN EXEMPLE CONCRET

Certains "gestionnaires de fichier" du commerce sont très performants mais une fois chargés, ils font 25 à 30 kilo-octets en RAM, d'où moins de 10 k-o disponibles pour le fichier... Une misère ! Avec un logiciel bâti en CHAIN MERGE, il est aisé de renverser la situation. Exemple : le total des programmes sur la disquette dépasse les 60 kilo-octets, mais en RAM seulement 6 kilo-octets (environ) en permanence, d'où 35 k-o pour votre fichier ! Soyons plus précis :

Un programme d'environ 2000 octets (ou moins) va rester constamment en RAM, c'est le "programme-souche" ou "permanent". C'est essentiellement le MENU proposant les diverses options, telles que saisie, modification, recherche, tri, etc... Le choix que vous faites ne se traduit plus par un GOSUB ou un GOTO mais par un CHAIN MERGE "nom de sous-programme". Celui-ci vient se greffer à la suite du programme-souche, et s'exécute. Ce sera, par exemple, le tri de votre fichier (un tableau DIM) qui lui, toujours en RAM, n'est pas altéré par cette manœuvre. Ceci fait, retour au MENU, effacement par DELETE programmé du "greffon" et attente d'un autre CHAIN MERGE.

Il va de soi que ces sous-programmes commencent tous au même numéro de ligne, par exemple 5000, et sont logés sur une même face de disquette, soit un maximum de 169 kilo-octets... Cette technique est utilisée sur les logiciels "professionnels" comme le "PC-FILE" pour "IBM-PC". L'avantage pour le programmeur est qu'il peut, par la suite, augmenter le nombre et la taille de ses modules sans rogner sur la place mémoire du fichier, lequel peut donc devenir énorme.

Oui, mais y a-t-il des inconvénients ? Bien sûr I Le plus visible est la lenteur à chaque changement d'option ; fini le GOSUB immédiat. Les autres défauts sont plus anodins : des précautions à prendre ou certains petits interdits... du moins avec le CPC 464 ; vous aurez plus de libertés avec les CPC 664 et 6128.

Après le principe, voyons la pratique : rien de tel qu'un petit gestionnaire de fichiers volontairement incomplet, que vous pourrez ensuite transformer en "petit monstre".

LE PROGRAMME-SOUCHE (lignes 10 à 5000)

Nous y illustrons la plupart des précautions à prendre.

Tout d'abord, ligne 50, le classique et obligatoire OPENOUT"BIDON". Puis on définit les DIM. On a prévu un tableau de chaînes de 200 lignes avec trois variables (ou colonnes). Les noms des sous-programmes sont eux aussi mis en DIM PROG$.

CPC n°10

★ LICENCE: COMMERCIALE
★ ANNÉE: 1986
★ AUTEUR: Michel ARCHAMBAULT

★ AMSTRAD CPC ★ DOWNLOAD ★

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » Calculons mieux et plus simplement
» Coding » Basic Reduction du Code Basic (Amstar&CPC)
» Coding » Basic - le Son sur Amstrad
» Coding » Basic - Essai Compilateur Basic
» Coding » Basic Bug du Merge

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.75-desktop
Page créée en 207 millisecondes et consultée 7 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.