HARDWAREPERIPHERIQUES ★ MEMOIRE - PHOENIX M64 ★

L'EXTENSION MÉMOIRE PHOENIX M64|Amstrad Magazine)LE REPÊCHAGE DES VIEUX AMSTRAD|Science et Vie Micro)

La société C.O.R.E commercialise une extension mémoire de 64Ko destinée aux ordinateurs AMSTRAD CPC 464 et 664. Cette carte, que nous vous proposons par ailleurs pour un prix de 595 Francs, nous l'avons essayée afin que vous sachiez ce que son acquisation peut apporter aux ordinateurs AMSTRAD qui ne disposent à l'origine que de 64Ko de mémoire.

Dans cet article, vous trouverez un chapitre complet sur les instructions BASIC d'utilisation de l'extension. Nous y reprenons les règles de syntaxe des différentes instructions afin que vous puissiez comparer leurs possibilités avec celles du 6128. Toutes ces instructions ont été essayées et les règles de fonctionnement qui vous sont données correspondent bien à la réalité.

A l'achat de l'extension, vous entrez en possession de :

  • La carte d'extension proprement dite,
  • Un câble de raccordement à votre CPC,
  • Une cassette permettant la mise en oeuvre d'instructions BASIC supplémentaires,
  • Une documentation utilisateur.

La carte d'extension

L'ensemble de la carte d'extension est inclus dans un pavé de résine noire. Cette présentation, qui a été choisie pour des raisons de solidité, ne me semble toutefois pas être l'idéal sur le plan pratique et esthétique. En effet, si il est indéniable que l'inclusion dans la résine accroît considérablement la robustesse du montage proposé, ce choix de présentation a aussi entraîné les conséquences suivantes : Le pavé de résine est très lourd. Il aurait donc été peu réaliste de l'enficher directement dans le connecteur de bus d'extensions (le pauvre connecteur n'aurait sûrement pas tenu le coup très longtemps).

Votre extension est donc reliée à votre CPC par l'intermédiaire d'un câble. Et c'est à l'extrémité de ce câble que vous allez brancher les autres extensions dont vous disposez (unité de disquettes, crayon optique, synthétiseur de paroles, etc.).

C'en est donc terminé avec les extensions qui s'enfichaient les unes dans les autres à l'arrière de votre appareil. Vous voilà confronté avec les problèmes de câbles qui trainent sur le bureau et, reconnaissons-le, l'ensemble carte PHOENIX M64 et extensions diverses n'est ni esthétique, ni pratique. D'autant plus que, compte tenu de la longueur de câbles qui relient le moniteur à l'unité centrale de l'AMSTRAD vous serez obligé, pour peu que vous ayez plusieurs extensions, d'appuyer celles-ci contre votre écran. Bonjour la visibilité...

Le câble de raccordement

Je ne vous parlerai du câble de raccordement que pour vous signaler qu'il vous faut préciser, si vous achetez cette carte, le type d'appareil que vous possédez.

S'il s'agit d'un 664 ou d'un 464 sans lecteur de disquettes, vous aurez le câble dit "FI". S'il s'agit d'un 464 avec lecteur de disquettes ou d'un 664 auquel vous aurez connecté des extensions, vous aurez le câble dit "F2" sur lequel vous pouvez connecter l'extension mémoire et les diverses extensions que vous possédez.

Un conseil à propos du câble "F2" Si, sur le câble que vous obtenez, la plaque de branchement de l'unité de disquettes est enfichée dans un des connecteurs situés à l'extrémité du câble, mettez cette plaque dans le connecteur médian. Vous éviterez ainsi des problèmes de parasites qui peuvent vous empêcher d'utiliser votre extension. (Je me suis trouvé, pour cette raison, dans l'impossibilité de mettre en route le système).

La cassette contenant les extensions BASIC

Le programme générant les instructions Basic qui vous permettent d'utiliser votre extension vous est fourni sur cassette.

Je reviendrai plus tard sur les nouvelles instructions dont vous disposez. Je me contenterai ici d'indiquer à ceux qui voudraient mettre ce programme sur disquette que le programme de génération des instructions commence à l'adresse 41472 et occupe 1147 octets. La mise de ce programme sur disquette pourra alors se faire à l'aide des instructions suivantes (pour CPC 464) :

10 MEMORY 41471
20 |TAPE.IN
30 LOAD "Nom fichier binaire"
40 SAVE "Nom fichier binaire", B,41472, 1147

Le programme Basic permettant d'activer CBANK.BIN sera copié sur disquette tel qu'il est sur la cassette. (Ces programmes ne sont volontairement pas protégés afin que le transfert cassette-disquette puisse être fait sans problème par les utilisateurs de l'extension)

La documentation utilisateur

La documentation qui est livrée avec la carte ne mérite presque que des éloges. Elle est à la fois simple et complète. Elle contient d'abord les instructions de branchement de l'extension selon le câble utilisé et la syntaxe des instructions Basic supplémentaires accessibles à l'utilisateur. Les problèmes de compatibilité avec le Basic du 6128 sont clairement, quoique brièvement, exposés. C.O.R.E a eu en outre la bonne idée de donner les renseignements dont peuvent avoir besoin les programmeurs en assembleur Z80. La documentation indique ainsi l'adresse de l'extension dans l'espace E/S de votre CPC et signale les instructions assembleur nécessaires à la lecture de données dans la RAM d'extension. Ces indications sont heureusement complétées par le listing assembleur des extensions RSX SCREENCOPY et SCREENSWAP, listing qui permet de mieux se familiariser avec la gestion de la carte.

Les instructions supplémentaires

La carte d'extension PHOENIX M64 vous est livrée avec des RSX BASIC permettant de manipuler des images d'écran et des variables. L'extension 64Ko a été subdivisée en quatre blocs de 16Ko chacun et numérotés de 2 à 5. (le numéro de bloc 1 est réservé à l'écran)

Vous pouvez soit sauvegarder une image d'écran dans un des quatre blocs de la RAM, soit restituer sur l'écran le contenu d'un de ces quatre blocs. Les instructions dont vous disposez à cet effet sont les suivantes :

  • |SCREENSWAP, N, M, qui échange le contenu du bloc numéro N avec celui du bloc numéro M.
  • |SCREENCOPY, 1, N qui copie dans la mémoire écran le contenu du bloc N de la RAM externe.

Manipulation des variables

Ces manipulations ne concernent que les variables de type "chaîne de caractères" dont la longueur est comprise entre 2 et 255.

Les instructions dont vous disposez pour ces manipulations sont les suivantes :

  • |BANKOPEN, L qui vous ouvre l'accès à la RAM d'extension et vous permet d'y stocker des variables.

Dans cette instruction, L représente la longueur de la variable que vous voulez stocker (entre 2 et 255 donc). Cette instruction laissant inchangé le contenu de la RAM externe vous pourrez, pour peu que vous vous donniez la peine de gérer un "catalogue" du contenu de votre extension, y stocker des variables de longueurs différentes.

  • |BANKWRITE, @R%,@A$C,  N] qui vous permet d'écrire la chaîne AS dans la RAM externe.

La variable N, qui est facultative, indique que le numéro d'enregistrement dans la RAM d'extension qui doit correspondre à la chaîne AS. Si elle est omise, le numéro de l'enregistrement de A$ est celui de l'instruction |BANKWRITE précédente + 1. La variable R% est un code "retour", qui permet de savoir si l'enregistrement en RAM s'est déroulé correctement.

  • |BANKREAD, @R%, A$C, N] qui vous permet de recevoir dans la variable A$ le contenu d'un enregistrement de la RAM externe. Les variables N et R% ont les mêmes significations que dans l'instruction |BANKWRITE.
  • |BANKFIND, @R%, @A$C, N][M] qui recherche dans la RAM externe un enregistrement contenant la chaîne AS. Cette recherche peut s'effectuer :
    • A partir de l'enregistrement courant et dans ce cas, N et M ne doivent pas être renseignés,
    • A partir de l'enregistrement numéro N et jusqu'à la fin du fichier RAM. Dans ce cas, N doit être renseigné et M omis,
    • A partir de l'enregistrement numéro N de la RAM et jusqu'à l'enregistrement numéro M. Dans ce cas, tous les paramètres doivent être renseignés.

La variable R% contiendra, selon le résultat de l'exécution de |BANKFIND, soit une indication d'erreur (elle aura alors une valeur négative), soit le numéro de l'enregistrement contenant la chaîne recherchée.

Lors de la recherche, vous pouvez masquer les caractères non significatifs avec le caractère CHR$(0).

NOTA : dans la RAM d'extension, la numérotation des enregistrements commence à zéro.
Lors des opérations de lecture, il vous faudra dimensionner vos chaînes alphanumériques à la taille fixée dans le dernier

  • |BANKOPEN effectué (vous pouvez utiliser pour cela l'instruction STRING$). Si vous ne le faites pas vous courrez le risque, dans le cas où la chaîne de réception a une longueur à celle définie dans le dernier |BANKOPEN, d'écraser d'autres variables du programme BASIC.

Utilité de l'extension - compatibilité 6128

La carte PHOENIX M64 apporte aux CPC 464 et 664 des capacités supplémentaires tant pour les possibilités de manipulation des écrans que pour le stockage des variables.

Les amateurs de graphisme et les concepteurs de jeux pourront, grâce aux instructions |SCREENCOPY et |SCREENSWAP, effectuer des changements dont la rapidité est nettement plus importante que celle obtenue en chargeant des écrans stockés sur disquette ou (à plus forte raison) sur cassette. En ce qui concerne le stockage des variables, la meilleure façon de profiter de l'espace offert par la carte d'extension consiste à travailler essentiellement avec des tableaux de chaînes de caractères. Vous pourrez, en tenant compte du fait que |BANKOPEN ne change pas le contenu de la mémoire, réserver la place nécessaire à ces tableaux dans votre extension de 64Ko, les stocker et les relire dans cette RAM externe. Cela soulagera d'autant la RAM centrale de votre CPC et peut vous faire gagner un espace mémoire important. Pour les tableaux de variables numériques, rien ne vous empêche de les transformer en chaînes alphanumériques avec l'instruction STR$ et de les stocker aussi dans vos 64 K supplémentaires. En outre, vous pourrez utiliser les possibilités citées ci-dessus (manipulation d'écran et stockage des variables) pour peu que vous gériez convenablement les numéros de blocs affectés aux copies d'écran et les numéros des enregistrements affectés aux variables stockées. Pensez aussi que cette extension de 64Ko peut être utilisée comme un disque virtuel. Vous pourrez y stocker des fichiers sur lesquels vous désirez travailler, et ceci sans encombrer la mémoire centrale. Ceci est particulièrement pour les fichiers à accès direct que le BASIC des Amstrad CPC ne permet pas de gérer sur disquette. Le programme concernant la banque mémoire du 6128 publié dans l'AMSTRAD MAGAZINE numéro 5 du mois de décembre est d'ailleurs très aisément adaptable pour être utilisé avec la carte PHOENIX. La compatibilité avec le 6128 n'existe que sous la réserve de modifications des paramètres d'appel des instructions. En revanche, le nom des instructions supplémentaires est le même avec la carte PHOENIX M64 qu'avec le 6128. Attention toutefois : les instructions FRAME, FILL, etc, qui n'existent pas sur le 464 ne sont pas ajoutées par l'utilisation de l'extension. Il vous faut donc éliminer ces ordres si vous voulez utiliser un programme écrit sur 6128. En ce qui concerne CP/M, vous devez absolument savoir que :

  • L'utilisation de la carte PHOENIX M64 ne vous permet pas de mettre en oeuvre CP/M + . Pas question donc de l'acquérir pour avoir CP/M + et mettre en oeuvre MULTIPLAN.

L'espace disponible sous CP/M 2.2 est inchangé. Pas question, pour l'instant, de mettre en oeuvre des applications tournant avec ce système d'exploitation et nécessitant une capacité mémoire supérieure à celle offerte par les 464 et 664. Toutefois, mais je vous dis cela sous toutes réserves, un logiciel serait en préparation qui permettrait d'accroître la place mémoire disponible sous CP/M 2.2.

Conclusion

L'extension mémoire PHOENIX M64, pour un prix somme toute modique (595 Francs avec câble et extensions BASIC), accroît fortement les possibilités des CPC 464 et 664. Si l'impossibilité de l'utiliser avec CP/M + et la présence sur le 6128 d'instructions inexistantes dans les 464 et 664 ne permettent pas de parler de compatibilité totale entre un 464 équipé de l'extension et un 6128, il faut toutefois noter que les instructions permettant d'exploiter cette banque mémoire peuvent être aisément modifiées pour passer d'un système à l'autre. Enfin, il ne faut pas sous-estimer l'avantage que représentent pour un utilisateur 64K entièrement réservés au stockage de variables et de pages écran, ou pouvant être utilisés comme fichier virtuel.

R.P. Spiegel , AMSTRAD MAGAZINE n°6 (JANVIER 1986)

★ EDITEUR: CORE
★ ANNÉE: ???
★ AUTEUR(S): ???
★ PRIX: 595 FF

★ 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):
» Hardware » Mémoire - Anta 64k.3
» Hardware » Memoire - Vortex Expansion Board (Popular Computing Weekly)
» Hardware » Memoire - E109 - Extension 64k - Jagot et Leon
» Hardware » Extension Memoire/Interface ROM - X-Mem 512K
» Hardware » Memoire - DK'Tronics Manual
» Hardware » Memoire - Microgenic - Advanced Eprom Expansion Board (Amstrad Computer User)

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/c
Page créée en 830 millisecondes et consultée 847 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.