Logo de l'association MO5.COM
Connexion / S'inscrire

     Association MO5.COM pour la préservation du patrimoine informatique et vidéo-ludique

 Lecture d'un article
 
Accueil
 
Association
 
Musées en ligne
 
Communauté
 
La Memcard
La Memcard est l'extension RAM ultime pour CPC : 2Mo !

Par CSKi - Crée le 31/01/2003 - Dernière modification le 26/02/2005

La Memcard


Cette carte a été conçue par Ram7, l'auteur de la célèbre Ramcard. Elle permet à votre CPC ou CPC+ de disposer de jusqu'à 2 Méga Octets de RAM, sans alourdir la gestion de la mémoire de l'ordinateur.


Présentation

La MEM CARD est de taille relativement imposante par rapport à une extension standard du CPC. Elle occupe approximativement la surface d'une feuille A5. Sur cette carte vous trouverez quelques composant électroniques parmi lesquel un MACH-131 (pour les connaisseurs, sachez qu'un MACH-130 de récupération pourra tout à fait faire l'affaire), la RAM, une pile, ainsi que quelques jumpers qui vous permettront de configurer votre matériel. Ces derniers vous permettront de préciser le type de CPC que vous possédez (normal ou plus), ainsi que la mémoire installée sur la carte (128 Ko, 1 Mo ou 2 Mo).

Je vois déjà le petit blond à lunettes qui s'exclame "Il y a une pile dans la MEMCARD ?". Et oui ! Cette RAM n'est pas volatile, cela veut dire qu'elle ne s'effacera pas quand vous éteindrez votre CPC. La pile en elle-même a une durée de vie très longue, on pourra donc utiliser cette extension comme une simple disquette de deux Mégas.

Vous voulez encore d'autres bonnes nouvelles ? La MEM CARD est tout à fait compatible avec les extensions DK'Tronics, ce qui vous permettra d'utiliser les avantages apportés pour certains logiciels, comme par exemple Discology (Environ 275 Ko de RAM pour copier vos disquettes, finies les parties de grille-pain !).
 

Niveau software

Si vous avez tâté un peu de la programmation sur CPC, vous savez que les 64 Ko supplémentaires des 6128 sont accessibles par un OUT sur le port &7F. La valeur de l'octet envoyé correspond au numéro de la page (16 Ko), ainsi qu'à la méthode d'accès mémoire que vous souhaitez.

L'octet est de type "&x11000xxx", où les trois derniers bits s'obtiennent d'après le tableau suivant :
 
|Bits|Signification|
|000|RAM normale (banks désactivées)|
|001|Bank 4 accessible en &C000|
|010|Toutes les banks accessibles de &0000 à &FFFF|
|011|Bank 4 en &C000, "écran" en &4000|
|100|Bank 1 accessible en &4000|
|101|Bank 2 accessible en &4000|
|110|Bank 3 accessible en &4000|
|111|Bank 4 accessible en &4000|

Ce que peu d'entre nous savaient, c'est que cet octet permet en fait d'accéder à 512 Ko, et non pas juste à 64 Ko de RAM...

En effet, les trois zéros qui y figurent indiquent le numéro de bloc, de 0 à 7, ce qui nous fait 8x16x4x16384=512 Ko. Comme un CPC 6128 (et 6128+) standard ne dispose que d'un seul bloc (le bloc 000) supplémentaire, il n'était pas nécessaire de connaitre la réelle signification de ces trois bits. De plus avec votre CPC normal, vous aviez beau modifier ces bits, vous accédiez toujours au bloc 0 ce qui implique que certaines personnes ont fini par supposer que ces bits ne servaient à pas à grand-chose et pouvaient donc être ignorés. Or il n'en est rien : Avec l'extension mémoire, si vous voulez accéder à la bank 1 du bloc 3, vous ferez un "out &7f00,&x11011100".

En résumé l'octet envoyé sur le port &7F se décompose ainsi :
&x11yyyxxx, où yyy est le numéro de bloc, et xxx est le type d'accès aux banks de ce bloc.

Voilà, la limite théorique du CPC est atteinte ! Comment faire pour accéder aux 1,5 Mo supplémentaires de la carte ?

Ram7 a eu l'idée de rajouter des ports supplémentaires sur le CPC. Ainsi un CPC normal possède un port &7F, alors qu'un CPC muni de l'extension 2 Mo profite en plus des ports &7E, &7D et &7C.
Chacun de ces nouveaux ports fonctionne exactement comme son petit frère &7F. Simplement il vous permet d'accéder à une page de 512 Ko différente.

Un petit résumé pour finir :

La mémoire du CPC est divisée en quatre pages de 512 Ko, elles-même divisées en huit blocs de 64 Ko qui sont composés de quatre banks de 16 Ko.

La formule magique pour accéder à une page est donc :

OUT &7F-page,&x11000000+bloc*&x1000+&x100+bank

où la variable "page" est comprise entre 0 et 3, "bloc" est comprise entre 0 et 7, et "bank" est comprise entre 0 et 3.
 

Pour obtenir la MEM CARD...

Cette carte est disponible en quatre modèles pour un prix allant de 400 à 900 francs, en fonction de la quantité de RAM.


Remerciements...

Auteur de l'article : CSKi, avec l'aide de RAM7 :-)

 
En discuter dans les ForumsTous les articles