Recherche:Archéologie de l'informatique/Thomson/Extension mémoire 64Ko

Une page de Wikiversité, la communauté pédagogique libre.

La configuration de base MO5 est de 48 ko de RAM, dont 16 sont utilisés comme mémoire vidéo et 32 comme RAM utilisateur.

Il existe une extension de RAM qui se branche sur le port de la cartouche et qui ajoute 64 ko de RAM supplémentaires, sous la forme de 4 pages de 16 ko.

Cette extension ne fonctionnera pas sur toutes les machines : la première génération de MO5 ne câble aucun signal d’écriture sur le port de la cartouche. Cela a été ajouté lors de l’introduction de l’extension.

Histoire[modifier | modifier le wikicode]

Cette extension a été développée pour être utilisée dans le système Nanoréseau. Il a été utilisé pour charger le logiciel de l’ordinateur maître via le réseau Nanoréseau, puis verrouillé en écriture pendant l’utilisation du logiciel. Cela a quelques incidences sur la conception du matériel:

L’extension RAM se branche dans le port de la cartouche (laissant le port d’extension libre pour le contrôleur Nanoréseau) et utilise l’espace de la cartouche dans la carte mémoire.

Il peut être protégé en écriture,

Il ne peut pas être utilisé à partir de BASIC, car il masque la ROM BASIC lors de son utilisation.

Programmation[modifier | modifier le wikicode]

La RAM est mappée aux adresses B000-EFFF, tout comme une cartouche ordinaire.

L’extension RAM est configurée à l’aide d’un seul registre à l’adresse A7CB (écriture seule).

  • bits 0-1 : numéro de page RAM
  • bit 2: activer l’extension de la RAM (lorsqu’il est désactivé, le BASIC est mappé)
  • Bit 3: Activer en écriture

Le BASIC sera mappé au démarrage de la machine, mais ce n’est pas le cas lors de la réinitialisation à chaud. Pour éviter un plantage lors de la réinitialisation de la machine, un logiciel performant situé dans l’extension RAM doit fournir un vecteur de réinitialisation à l’adresse EFFE-EFFF, dans toutes les banques. La ROM du moniteur lit l’adresse qui y est stockée et y accède lors de la réinitialisation.