FR 2617307 A1 19881230 FR 8807016 A 19880526 1 261730 7 La présente invention se rapporte au domaine des calculateurs numériques et concerne en particulier des microcalculateurs ou micro-ordinateurs comportant des possibilités d'affichage vidéo. Au cours de ces quelques dernières années, il s'est produit un accroissement rapide dans l'utilisation de calculateurs numériques à la maison par des amateurs de passe-temps divers, pour l'artisanat ou le petit com- merce et pour des applications technologiques et scienti- fiques de routine. Dans leur majeure partie, ces besoins ont été satisfaits par des microcalculateurs ou micro- processeurs autonomes relativement peu coûteux, munis de périphériques essentiels, y compris des unités de disques et des programmes de calculateur relativement faciles à gérer. La conception de calculateurs destinés à satis- faire à ces besoins exige une ingéniosité considérable, étant donné que chaque calculateur doit se prêter à une large gamme d'applications et en raison du fait que ce marché est particulièrement sensible au coût. Un calculateur domestique ou pour petit commerce doit, par exemple, fonctionner avec un certain nombre de langages de programmation différents, y compris ceux qui exigent des mémoires relativement grandes, tels que le Pascal. Le calculateur doit être relié à un affichage balayé à trame standard et offrir une large gamme de pos- sibilités d'affichage, tels que les affichages de carac- tères alphanumériques à forte densité nécessaires pour le traitement de mots en plus d'affichages graphiques à haute définition. La satisfaction de ces besoins de calculateurs spé- cialisés exige généralement l'utilisation d'un micropro- cesseur relativement peu coûteux et l'amélioration des possibilités de ce processeur par des techniques de monta- ge. Cela abaisse le coût total du calculateur en rédui- sant par exemple, les besoins en énergie, les structures de bus, etc. Une autre considération importante réside 2 2617307 en ce que les nouveaux calculateurs doivent être capables d'utiliser des programmes mis au point pour des modèles antérieurs. Comme on le verra plus loin, le microcalculateur décrit ici convient de manière idéale aux applications domestiques et de petit commerce. Il. offre une large gamme de possibilités, y compris des possibilités d'af- fichage d'avant-garde qu'on ne trouve pas-dans les cal- culateurs comparables de la technique antérieure. Le calculateur de la technique antérieure le plus voisin connu du Déposant est disponible dans le commerce sous la marque de fabrique Apple- II. Certaines parties de ce calculateur sont décrites dans le brevet US n 4 136 359. Un calculateur numérique comprenant une unité centrale de traitement (CPU) et une mémoire à accès direct (RAM) ou nmmire vive avec un bus d'adresses et un bus de données d'interconnexion. L'un des aspects de la présente in- vention réside en ce qu'on a augmenté les possibilités de l'unité centrale en permettant le stockage de données de page de base ou page zéro dans toute la mémoire. Des emplacements de pile de variante et une possibilité amé- !iorée d'accès direct à la mémoire sont également assurés par le même montage. Le moyen de détection est utilisé pour détecter une zone d'adresses prédéterminée telle que la page zéro. Ce moyen de détection provoque le couplage d'un registre spécial (registre "Z") avec le bus d'adres- ses. Le contenu de ce registre "Z" fournit, par exemple, un pointeur au cours de l'accès direct à la mémoire ou des emplacements de pile de variante pour enregistrer des données normalement stockées sur la page une. La mémoire du calculateur suivant l'invention est organisée d'une manière inhabituelle pour assurer une com- patibilité avec le bus de données à huit bits tout en as- surant les débits binaires élevés (16 bits/MHz) nécessai- - res pour des affichages à haute définition. Une première pluralité de dispositifs de mémoire sont connectés à un premier bus de sortie de mémoire; ces dispositifs de mémoire sont également connectés au bus de données. La mémoire comprend encore une seconde pluralité de disposi- tifs de mémoire qui sont également connectés au bus de données; toutefois, les sorties de ces seconds disposi- tifs sont couplées avec un second bus de mémoire de sor- tie. Des premiers moyens de commutation permettent aux premier et second bus de mémoire d'être connectés à l'af- fichage pour assurer des transferts à un débit binaire éle- vé. Des seconds moyens de commutation permettent à l'un ou l'autre des bus de mémoire d'être connecté au bus de données au cours de modes de non-affichage. La capacité d'adressage de la mémoire est considé- rablement élargie, non Seulement grâce à-une commutation par bloc mais encore grâce à une restauration nouvelle, qui n'exige pas la commande d'unité centrale associée à la commutation par bloc. En effet, les bits "inutilisés" provenant de l'un des premier et second bus de mémoire sont utilisés à des fins de restructuration. Ce mode de fonctionnement est particulièrement- efficace pour assurer une inversion entre deux parties séparées de la mémoire. Le sous-ensemble d'affichage du calculateur décrit engendre un signal couleur vidéo d'une manière originale. Un code de couleur de quatre bits déjà utilisé dans la technique antérieure est également utilisé avec le sous- ensemble d'affichage décrit. Toutefois, dans ce dernier, ce code est utilisé pour engendrer un signal de chrominan- ce de courant alternatif et un signal de luminance de cou- rant continu séparé. Cela permet des possibilités de cou- leur.élargies par rapport aux affichages en couleur analo- gues de la technique antérieure. L'invention sera mieux comprise à la lecture de la description détaillée qui suit et à l'examen des des- sins joints qui en représentent, à titre d'exemple non limitatif, un mode de réalisation. 4 2617307 Sur ces dessins: la figure 1 est un schéma symbolique représentant les organes et sous-ensembles principaux de l'ensemble de microcalculateur suivant l'invention décrit ci-après; les figures 2 et 3 représentent ensemble l'unité centrale et l'architecture associée à celle-ci, en parti- culier le bus d'adresses et le bus de données. La figure 2 est un schéma de montage représentant principalement le bus d'adresses et les moyens logiques-associés à ce bus. La figure 3 est un schéma de montage représentant princi- palement le bus de données et son interconnexion avec les bus de mémoire (bus A et bus B), une mémoire morte "d'ini- tialisation" et des bornes d'entrée/sortie; les figures 4, 5 et 6 représentent le sous-ensemble de mémoire. La figure 4 est un schéma de montage repré- sentant principalement les circuits de sélection entre des signaux d'adresse provenant du bus d'adresses et des si- gnaux de compteur d'affichage. La figure 5 est un schéma de montage représentant principalement la génération de divers signaux de sélection pour les dispositifs de mémoi- re. La figure 6 est un schéma de montage représentant l'organisation de la mémoire à accès direct et son inter- connexion avec le bus de données et les bus de sortie de la mémoire; Les figures 7 et 8 représentent le sous-système d'affichage du calculateur suivant l'invention. La fi- gure 7 est un schéma de montage représentant les circuits de génération des signaux numériques utilisés pour l'af- fichage vidéo. La figure 8 est un schéma de montage des circuits utilisés pour convertir les signaux numériques en signaux vidéo analogiques, et la figure 9 est un graphique de plusieurs formes d'onde utilisé pour décrire un montage de la technique an- térieure et le montage de la figure 8. Un ensemble de microcalculateur capable de comman- der un affichage vidéo balayé à trame est décrit ci-après. 2 2617307 Dans la description qui va suivre, de nombreux détails spécifiques, tels que des numéros d'article particuliers, des fréquences d'horloge, etc., sont indiqués pour-per- mettre une compréhension totale de l'invention. Toute- fois, il est clair pour un spécialiste de cette techni- que que les concepts inventifs décrits ici peuvent être mis en pratique sans ces détails spécifiques. Dans d'autres cas, des circuits bien connus ont été réalisés sous forme de schéma symbolique afin de ne pas noyer la description de l'invention dans des détails inutiles. On va tout d'abord se référer à la figure 1, sur laquelle on peut voir que le calculateur décrit comprend essentiellement une unité centrale 65, son bus de don- nées associé 42, un bus d'adresses 46, un sous-ensemble de mémoire et un sous-ensemble d'affichage 58. Le bus d'adresses 46 partant de l'unité centrale est couplé avec le sous-ensemble de mémoire pour permet- tre la sélection d'emplacements dans la mémoire. Cer- tains des signaux d'adresse traversent un multiplexeur 47. Pour certains modes de fonctionnement, des signaux prove- nant d'un registre 52 sont appliqués par l'intermédiaire du multiplexeur 47, au bus 46. Le registre 52 est égale- ment désigné sous le nom de registre "Z" et est couplé avec le multiplexeur 47 par le bus "Z". La description générale du multiplexeur 47 et de sa commande par le cir- cuit logique 41 est donnée plus loin de façon détaillée en référence à la figure 2. D'une manière générale, le montage représenté à gauche de la ligne en trait interrom- pu 53 est inclus dans la figure 2, tandis que l'unité centrale 65, la mémoire 50, le bus de données 42 et le multiplexeur 43 sont représentés de façon détaillée sur la figure 3. Le bus d'adresses N1 est couplé avec la mémoire morte 50. La sortie de cette mémoire est couplée avec le bus de données 42 du calculateur. La mémoire morte (ROM) , comme décrit plus loin, stocke des sous-programmes de 6 2617307 test, et autres données de nature générale "initiale" en vue de l'initialisation de l'ensemble. Le bus de données 42 transmet des données à lamé- moire à accès direct (RAM) ou mémoire vive 60 ainsi que vers des bor- -5 nes d'entrée-sortie et à partir de telles bornes. Ce bus applique également des données au registre Z, 52 et à d'autres registres couramment utilisés, non représentés. Le bus de données 42 reçoit des données de la mémoire RAM 60 par l'intermédiaire du bus A et du bus B, dont la sélection est assurée par le multiplexeur 43. Le bus de périphériques N2 est utilisé, comme représenté clairement sur la figure 3, pour un couplage avec des périphériques. Le sous-ensemble de mémoire est représenté de fa- çon détaillée sur les figures 4, 5 et 6. Le moyen de com- mande d'adresse, qui reçoit des adresses sur le bus 46, effectue la sélection finale d'emplacements de mémoire dans la mémoire RAM 60. La commutation par bloc, l'a- dressage à des fins d'affichage, le défilement et autres opérations de structuration de la mémoire sont commandés par le moyen de commande d'adresse 59, comme décrit plus loin de façon plus détaillée en référence aux figures 4 et 5. La mémoire RAM 60 est représentée de façon détail- lée sur la figure 6. Le compteur 58, qui est synchroni- sé avec les signaux d'affichage horizontaux et verticaux, transmet des signaux à la fois au moyen de commande d'a- dresse 59 et au sous-ensemble d'affichage 48. Le sous-ensemble d'affichage reçoit des données de la mémoire RAM 60 sur le bus A et sur le bus B et con- vertit ces signaux numériques en signaux vidéo, qui com- mandent un affichage balayé à trame standard. Un signal couleur NTSC standard est engendré sur le conducteur 197 et un signal vidéo noir et blanc est engendré sur le con- ducteur 198. Les signaux utilisés pour engendrer ces si- gnaux vidéo peuvent également être utilisés pour engendrer des signaux vidéo de rouge, de vert et de bleu (RGB) sépa- rés. Le sous-ensemble d'affichage 48 reçoit de nombreux 7 2617307 signaux de temporisation, y compris le signal de référence couleur standard représenté comme étant à 3,5 MHz (C3.5m). Ce sous-ensemble est décrit de façon détaillée sur les fi- gures 7 et 8. On va maintenant décrire l'architecture du calcu- lateur. Dans le mode de réalisation actuellement préféré, l'unité centrale 65 (microprocesseur) utilisée avec le calculateurdécrit est-un organe disponible dans le com- merce, le 6502A. Ce processeur à huit bits (bus de données à huit bits), qui comporte un bus d'adresses à seize bits, est représenté sur la figure 3 avec ses interconnexions avec le reste du calculateur. Le numéro de broche associé à chaque interconnexion est indiqué près du conducteur correspondant. Dans de nombreux cas, la nomenclature associée au 6502A (unité centrale 65) est utilisée dans- la présente description. Par exemple, la broche 6 reçoit le signal d'interruption non masquable (bM) et la broche 4 est couplée de manière à recevoir le signal de demande d'interruption- (! -). Certains des signaux utilisés avec l'unité centrale 65, qui sont bien connus dans cette tech- nique et qui ne sont pas nécessaires à la compréhension de l'invention, ne sont pas décrits de façon détaillée ici; il en est ainsi, par exemple, des divers signaux de synchronisation et des divers signaux d'horloge. Les signaux d'adresse provenant de l'unité centrale 65 sont identifiés par AO-A7 et A8-A15. Les signaux de données associés à l'unité centrale 65 sont indiqués par D0-D7. Comme il apparattra clairement au spécialiste de cette technique, les concepts inventifs décrits ici peuvent être utilisés avec d'autres microprocesseurs. On va maintenant se référer aux figures 2 et 3, o l'on voit clairement l'architecture' générale, en particu- lier l'architecture associée à l'unité centrale 65. Les signaux d'adresse Ao-A7 sont couplés avec un tampon 103 par le bus représenté principalement sur la figure 2. Ces signaux d'adresse sont également couplés avec la mémoire 8 2617307 ROM 50. Les signaux A0-A7, après avoir traversé le tampon 103, sont appliqués au sous-ensemble de mémoire. Les signaux d'adresse A8-A15 (bits d'adresse de plus fort poids) sont appliqués, par l'intermédiaire de conducteurs représentés sur la figure 2, aux multiplexeurs 47a et 47b. Le contenu du registre Z, 52 de la figure 1 est é- galement transmis aux multiplexeurs 47a et 47b par l'in- termédiaire du bus Z (Z1-Z7). Les multiplexeurs 47a et 47b permettent la sélection, soit des signaux A8-A15 pro- venant de l'unité centrale 65, soit du contenu du registre Z (Z1-z7) pour adresser la mémoire RAM 60. Les sorties de ces multiplexeurs sont désignées par A8-A15; cette dé- signation est utilisée même lorsque c'est le bus Z qui est choisi par la sélection. On remarquera que, dans le cas du signal Z0, ce signal est appliqué au multiplexeur 47a par l'intermédiaire de la porte OU EXCLUSIF 90 pour des raisons qui seront expliquées plus loin. Les signaux d'adresse A8-A1 sont également transmis à la mémoire ROM 50 et, par conséquent, les signaux Ao-All sont utili- sés pour adresser la mémoire ROM 50. Les signaux A8-A15 sont appliqués au circuit logique représenté dans l'angle inférieur de gauche de la figure 2; ce circuit logique correspond au circuit logique 41 de la figure 1. Les signaux de données d'entrée et de sortie de l'unité centrale 65 sont couplés par un bus directionnel avec le tampon bidirectionnel 99 (figure 3). Ce tampon est sélectivement mis-hors d'action par la porte 100 pour permettre à la sortie de la mémoire ROM 50 d'être mise en communication avec l'unité centrale 65 et pendant d'au- tres périodes qui sortent du cadre du présent exposé. Le sens de circulation des données à travers le tampon 99 est commandé par un signal lecture/écriture ap- pliqué à ce tampon par l'intermédiaire de la porte d'in- version 101 (ce type de porte sera dit ci-après simplement "inverseur"). Les données provenant de l'unité centrale sont-transmises, par l'intermédiaire du tampon 99 et 9 2617307 du bus 42, à la mémoire RAM 60 ou à des bornes d'entrée-' sortie. Les données provenant de la mémoire RAM 60 sont communiquées à l'unité centrale 65 ou au bus N2 à partir du bus A et du bus B par l'intermédiaire du tampon 99. Quatre des conducteurs du bus A et quatre des conduc - teurs du bus B sont couplés avec le multiplexeur 43a. D'une manière analogue, les quatre autres conducteurs du bus A et les quatre autres conducteurs-du bus B sont couplés avec le multiplexeur 43b. Les multiplexeurs 43a et 43b choisissent, soit les huit conducteurs du bus A, soit les huit conducteurs du bus B, et communiquent les données, par l'intermédiaire de ces bus, au tampon 99 et au bus 42. Ces multiplexeurs sont sélectivement mis hors d'action (par exemple pendant l'écriture) par la porte 102. Comme décrit plus loin, les seize conducteurs des bus A et B permettent la lecture de seize bits à la fois dans la mémoire RAM. Cela assure un débit binaire de 16 bits/MHz qui est nécessaire, par exemple, pour un affichage de 80 caractères par ligne. Les données sont chargées dans la mémoire RAM 60 à raison de huit bits à la fois. La mémoire ROM 50, comme décrit précédemment, stocke des programmes de test, des données nécessaires à l'initialisation de divers registres, des données de génération de caractères (pour la mémoire RAM 162 de la figure 7) et d'autres données apparentées. Des program- mes spécifiques utilisés dans le mode de réalisation ac- tuellement préféré du calculateur sont indiqués dans le tableau 1. La mémoire ROM 50 est choisie par des signaux de commande appliqués à ses broches 18 et 20 et désignés sous le nom de "signal ROM SEL" et "signal T ROM SEL". On peut utiliser comme mémoire ROM 50 l'une quelconque d'une pluralité de mémoires mortes disponibles dans le commerce. Dans le mode de réalisation actuellement préféré, on utilise l'article n SY2333 disponible dans le commerce. On va maintenant examiner ce circuit logique 2617307 (angle inférieur gauche de la figure 2); comme on peut le voir sur cette figure, la porte NON ET 81 reçoit le signal d'adresse A8 ainsi que le signal de pile de va- riante désigné par 7T. La sortie de cette porte alimente l'une des entrées de la porte ET 87. Le signal A8 est également appliqué, par l'intermédiaire de l'in- verseur 82, à l'une des bornes d'entrée de chacune des portes NON ET 85 et 86. Les signaux d'adresse Ag et A10 sont appliqués aux bornes d'entrée de la porte NON OU 83. La sortie de cette porte est couplée avec l'une des bor- nes d'entrée de chacune des portes NON ET 85 et 86 et de la porte ET 87. Les signaux d'adresse A11-A15 sont appli- qués aux bornes d'entrée de la porte NON OU 84. Le si- gnal A, est également appliqué à une borne d'entrée de la porte NON ET 85. Les sorties des portes ET 87 et 88 (par l'intermé- diaire de la porte NON OU 89) commandent les multiplexeurs 47a et 47b. Lorsque la sortie de la porte 89 est basse, le bus "Z" est choisi, sinon ce sont les signaux d'adresse provenant de l'unité centrale 65 qui sont choisis. Le circuit logique décrit ci-dessus, conjointement avec le bus "Z" et le registre "Z", assure une performance améliorée du calculateur. En premier lieu, ce circuit permet le stockage de données de page zéro ou page de base dans toute la mémoire RAM 60 et non plus seulement sur la page zéro. En second lieu, ce circuit permet d'a- dresser des emplacements de pile de variante (autres que la page une). Enfin, ce circuit établit, par l'intermé- diaire du registre "Z", un pointeur de mémoire RAM pour l'accès direct à la mémoire (DMA). On supposera pour les besoins de l'exposé que l'unité centrale 65 est en train d'adresser la page zéro de la mémoire. En d'autres termes, dans cette hypothèse, les bits d'adresse de plus fort poids A8-A15 sont tous des zéros. Les zéros des bits A9-A15 sont détectés par les portes 83 et 84. Si touteS les entrées de ces portes il 2617307 sont des zéros, les sorties de ces portes sont hautes, état qui est communiqué à la porte 87. Le bit A8, qui est éga- lement bas, assure un niveau haut à la sortie de la porte 81. Par conséquent, toutes les entrées de la porte 87 sont hautes, ce qui fait tomber au niveau bas le signal de sortie de la porte 89. Lorsque cela se produit, le bus "Z" est choisi. Au lieu que tous les zéros binaires provenant de l'unité centrale soient transmis à la mémoire centrale (mémoire RAM 60),-le contenu du registre "Z" fait partie de l'adresse d'accès à la mémoire. En consé- quence, même si l'unité centrale 65 a choisi la page zéro, des données peuvent néanmoins être écrites à un emplace- ment quelconque ou à partir d'un emplacement quelconque de la mémoire RAM 60 (y compris la page zéro). Cela améliore la performance de l'unité centrale étant donné que, par exemple, le temps nécessaire au décalage de données vers une unique page zéro ou à partir de celle-ci est réduit au minimum. Normalement, l'unité centrale 65 choisit la page une pour les emplacements de pile. Cela se produit lors- que A8 est haut et que A9-A15 sont bas. On supposera tout d'abord que les emplacements de pile de variante n'ont pas été choisis. Dans ces conditions, les deux entrées de la porte 81 sont hautes et sa sortie est basse. L'entrée basse de la porte 87 empêche la sélection du bus "Z". En conséquence, dans ce cas, les signaux d'adresse AO-A7- choisissent des emplacements de pile sur la page une. On supposera ensuite que la page une a été choi- sie par l'unité centrale et que le signal ALT STK est bas, ce qui indique que les emplacements de pile de variante doivent être choisis. (Un drapeau est mis par l'unité centrale pour modifier le signal AL ST-). Etant donné que le signal ALT STKest bas et que A8 est haut, un niveau. haut apparait à la sortie de la porte 81. Toutes les en- trées des portes 83 et 84 sont basses et, par conséquent, des niveaux hauts apparaissent aux sorties de ces deux por- i2. 2617307 tes. Les conditions d'ouverture de la porte 87 sont remplies, ce qui provoque un niveau haut à la sortie de cette porte et un abaissement du niveau de sortie de la porte 89. Le bus "Z" est, par suite, choisi par les multiplexeurs 47a et 47b. Cela permet à l'utilisation du contenu du registre "Z" comme emplacements de varian- te. Des emplacements de page non-zéro sont. obtenus en inversant A8. La porte OU EXCLUSIF 90 se comporte comme un inverseur sélectif. Si A8 est haut et E0 bas, alors A8 est bas à la sortie du multiplexeur 47a. On remar- * quera que, pendant la sélection de..la page zéro, alors que A8 est bas, le signal Z0 est directement transmis par la porte 90 à la sortie du multiplexeur 47a. On voit donc que le circuit logique, conjointement avec le signal LT =S, permet la sélection d'emplacements de pile de variante par l'intermédiaire du bus "Z". Cela améliore encore la performance de l'unité centrale qui, autrement, serait limitée à la page une pour les emplace- ments de pile. Le montage logique de la figure 2 est également utilisé, conjointement avec le registre Z, pour établir un pointeur lors de l'accès direct à la mémoire (DMA). On va maintenant supposer qu'un accès direct à la mémoire du calculateur est demandé par un appareil périphérique. Pour déclencher le mode DMA, l'unité centrale établit une adresse comprise entre F800 et F8FF. Par l'intermé- diaire d'un circuit logique non représenté sur les figu- res 2 et 3, le signal MR SL est rendu bas pour les adresses comprises entre F000 et FFFF. Ce signal est com- muniqué à la porte 93 et provoque une élévation du niveau de sortie de la porte 92 (=1 est haut à ce moment). Cette élévation de potentiel est communiquée à l'une des entrées de la porte 85. En outre, la porte 85 détecte que les bits d'adresse A8, A9 et A10 sont bas. Cette informa- tion est transmise à la porte 85 par l'intermédiaire de l'inverseur 82 et de la porte NON-OU 83, sous forme de si- 13 2617307 gnaux hauts. De plus, le fait que Al est haut est direc- tement communiqué à la porte 85. Par conséquent, pour une adresse comprise entre F800 et F8FF, le signal subit une chute de potentiel. Cela est détecté par l'ap- pareil périphérique, qui provoque à son tour une chute du signal DMA Iet transmet un signal "prêt" -à l'unité cen- trale 65, Une fois que ce "colloque" est terminé, des données peuvent commencer à être transférées à la mémoire RAM. Le signal b-f-1, transmis par l'intermédiaire de la porte 92 et de l'inverseur 93, rend bas le signal M S. Ce signal, en plus d'être communiqué à la mé- moire ROM 50, est appliqué au tampon 99 par l'intermédiaire de la porte 100, ce qui met ce tampon hors d'action (pen- dant la lecture de la mémoire ROM 50). En outre, le signal "prêt" provoque un arrêt brutal de l'unité centrale. Point important, le signal D-T, après avoir traversé- l'inverseur 94 et les portes 88 et 89, assure la sélection du registre Z. Le contenu du registre Z est fixe et four- nit un pointeur indiquant une page de la mémoire RAM. Dans les conditions ci-dessus, l'unité centrale in- crémente les huit bits inférieurs du signal d'adresse. La mémoire ROM 50 fournit les instructions d'incrémentation de l'adresse, à savoir SBC n 1 et BEQ. L'appareil péri- phérique émet ou reçoit les données en synchronisme avec le fonctionnement de l'unité centrale. Le périphérique fournit également un signal lecture/écriture pour préci- ser l'opération à effectuer. Des données sont alors dé- crites dans la mémoire RAM par l'intermédiaire du bus N2 et du bus 42, ou lues dans la mémoire RAM par l'intermé- diaire des bus A et B et du bus N2. Point important, dans le mode DMA décrit ci-dessus, des adresses provenant de l'appareil périphérique ne sont pas nécessaires et le registre Z est utilisé pour fournir un pointeur indiquant une page de la mémoire RAM 60. On va maintenant décrire le sous-ensemble de mémoi- re. 14 2617307 Le sous-ensemble de mémoire, indiqué sur la figure I sous la forme du moyen de commande d'adresse 59 et de la mémoire RAM 60, est représenté de façon détaillée sur les figures 4, 5 et 6, comme indiqué précédemment. Le moyen de commande de la mémoire est représenté sur les figures 4 et 5, tandis que la figure 6 représente les dis- positifs de mémoire et leur organisation. Le moyen-de commande d'adresse des figures 4 et 5 reçoit les signaux d'adresse de l'unité centrale 65 (Ao-A15), les comptes des compteurs vertical et horizontal (compteur 58 de la figu- re 1), qui sont utilisés au cours des modes d'affichage, des signaux de commande de l'unité centrale et d'autres signaux. Essentiellement, ce moyen de commande engendre les signaux d'adresse qui sont appliqués à la mémoire RAM de la figure 6 et qui comprennent les signaux d adresse de colonne et les signaux d'adresse de rangée (ou de li- gne), respectivement dénommés ci-après "signaux MI" et signaux M". D'autres fonctions associées sont égale- ment représentées sur les figures 4 et 5, telles que le montage qui assure le défilement de l'affichage, l'adres- sage indirect de la mémoire RAM et la structuration du sous-ensemble de mémoire. L'unité centrale 65 de la figure 3 produit une adresse de 16 bits permettant d'adresser la mémoire. Dans les circonstances ordinaires, cette adresse limite la ca- pacité de la mémoire à 64K. multiplets. Cette capacité de mémoire est insuffisante dans de nombreuses applica- tions, par exemple lorsqu'on désire utiliser effectivement le langage de programmation Pascal. Comme décrit plus loin de façon plus détaillée, le moyen de commande d'a- dresse des figures 4 et 5 permet l'utilisation d'une mé;- moire d'une capacité de 96K.multiplets ou de 128K.multi- plets. Une technique particulière bien connue, qui est utilisée avec l'invention pour augmenter cette capacité, est la commutation par bloc; cette commutation s'effec- tue sous la commande de l'unité centrale. En outre, le 2617307 moyen de commande d'adresse utilise un mode d'adressage indirect original qui, tout en procurant les bénéfices de la commutation par bloc, n'exige pas la commande u- suelle par l'unité centrale. Cela améliore considérable- ment le f6nctionnement de l'unité centrale avec la mé- moire de capacité élargie (comme décrit plus loin) par rapport à la commutation par bloc commandée par l'unité centrale. On va tout d'abord se référer à la figure 6, sur laquelle la configuration de la mémoire RAM est représen- tée pour,une capacité de 96K.multiplets. La mémoire est organisée en six rangées ou lignes, comprenant.chacune huit dispositifs de mémoire 16K, telles que les rangées 111 et 112. Dans le mode de réalisation actuellement préféré, on utilise deú mémoires RAM dynamiques MOS (ar- ticle n 4116). (Les désignations de broches et de si- gnaux se réfèrent à ce dispositif de mémoire particulier). Toutefois, il est bien évident qu'on peut utiliser éga- lement d'autres dispositifs de mémoire. Les données d'entrée de ces dispositifs de mémoire 106 sont appliquées à partir du bus 42. Chaque conducteur du bus 42 est connecté à la borne d'entrée de données d'un dispositif 106 particulier de chaque rangée. L'intercon- nexion de ce bus avec chacun des dispositifs de mémoire n'est pas représentée sur la figure 6 afin de ne pas com- pliquer excessivement le dessin. Toutefois, à titre d'e- xemple, on a indiqué que le conducteur 107 applique le bit de donnée D7 à la borne d'entrée de données de l'un des dispositifs de mémoire de chacune des six rangées. Trois rangées de dispositifs 106 ont leurs bornes de sortie couplées avec le bus A et les trois autres ran- gées sont couplées d'une manière analogue avec le bus Bo A titre d'exemple, on a indiqué que le conducteur 108 con- necte trois bornes de sortie de dispositifs 106 au conduc- teur DB7 du bus B, tandis que le conducteur 109 connecte trois bornes de sortie de dispositifs 106 au conducteur DA7 du bus A. 16 2617307 Les dispositifs de mémoire 106 décrits sont orga- nisés chacun sous la forme d'une mémoire 16K x 1. En conséquence, chacun de ces dispositifs reçoit une adresse de quatorze bits qui est multiplexée temporellement en deux adresses de sept bits. Ce multiplexage s'effectue sous la commande des signaux M et =,comme il est bien connu. Les conducteurs couplant les signaux d'a- dresse avec les divers dispositifs de la figure 6 ne sont pas représentés. Toutefois dans l'angle inférieur droit de la figure 6, les divers signaux appliqués à chaque dis- positif (y compris les signaux d'adresse) sont indiqués conjointement avec les numéros de broche correspondants. Un autre montage non représenté est le montage de com- mande de régénération, qui fonctionne d'une manière bien connue, conjointement avec les signaux CM et R et avec les signaux d'adresse, pour régénérer les dispositifs dy- namiques. Chaque rangée de dispositifs de mémoire 106 reçoit une combinaison spécifique exclusive de signaux C et A. Par exemple, la rangée 111 reçoit les signaux CA 5, 7 et 4, 5; d'une manière analogue, la rangée 112 reçoit les signaux C 0 et M 0, 3. La génération de ces si- gnaux 7 et est décrite en référence à la figure 5. Ces signaux (conjointement avec les signaux d'adresse de quatorze bits) permettent la sélection d'un emplacement de huit bits particulier dans la mémoire à 96K.multiplets (pour l'écriture) et également la sélection (pour la lec- ture) d'emplacements de seize bits. On peut développer la mémoire de la figure 6 en une mémoire à 128K. multiplets en utilisant des dispositifs de mémoire 32K tels que l'article n0 4132. Dans ce cas, on utilise quatre rangées de huit dispositifs de mémoire 32K, chacune de ces rangées recevant deux signaux C et Avant de passer en revue la figure 4, il est utile de posséder une compréhension générale de l'organisation de l'affichage. L'affichage, au cours de certains modes, est organisé en 80 segments horizontaux et 24 segments verticaux pour un total de 1920 blocks. Onze bits du compteur 58 de la figure 1 sont utilisés en tant que par- tie des signaux d'adresse pour que la mémoire puisse ac- céder à des données destinées à être affichées au cours de ces modes. Ces signaux de compteur sont désignés sur la figure 4 par H0-H5 et V0-V4. Au cours d'autres modes d'affichage, chaque segment horizontal est en outre subdi- visé en huit segments (par exemple pour l'affichage de 80 caractères alphanumériques par ligne). Cela exige trois signaux de temporisation verticaux supplémentaires dési- gnés par VA, VB et VC sur les figures 4 et 7. Dans la technique antérieure, on utilise souvent deux compteurs séparés-pour produire les signaux de tem- porisation et d'adresse nécessaires pour accéder à une mémoire lors de l'affichage des données contenues dans celle-ci. Le compte de l'un de ces compteurs représente les lignes horizontales de l'écran (compte vertical) et l'autre la position le long de chaque ligne (compte ho- rizontal ou compte de points). Dans de nombreux affi- chages de la technique antérieure, le bit de plus fort poids du compteur de points est utilisé pour incrémenter le compteur de lignes. Les données de la mémoire desti- nées à l'affichage sont structurées avec une corrélation biunivoque avec les comptes de ces compteurs. Dans un autre dispositif de la technique antérieure (réalisé sous la forme du calculateur Apple-II vendu par Apple Computer, Inc.), cette corrélation biunivoque n'est pas utilisée. Au lieu de cela, pour économiser des circuits, on utilise un unique compteur et l'on prévoit une structuration plus dispersée dans la mémoire. (A noter que lorsqu'on utilise un compte horizontal maximal de 80, ce nombre ne peut pas être représenté uniquementpar des "uns" dans un compteur numérique, de sorte que le compteur vertical ne peut pas être aisément incrémenté par le bit de plus fort poids du 18 2 2617307 compteur horizontal). Etant donné qu'une telle structura- tion plus dispersée fait partie de la technique anté- rieure et n'est pas critique pour la compréhension de l'invention, elle ne sera pas décrite ici de façon dé- taillée. Toutefois, la manière dont elle est réalisée sera discutée à propos de l'additionneur 1i4 de la fi- gure 4. Pour les besoins de la discussion, les signaux provenant du compteur 58 de la figure 1 sont désignés soit par V (signaux verticaux), soit par H (signaux ho- rizontaux). On va maintenant se référer à la figure 4, sur la- quelle on peut voir que la sélection, soit des signaux de compteur, soit des signaux d'adresse provenant de l'unité centrale, est assurée par les multiplexeurs 116, 117, 118 et 119. Chacun de ces multiplexeurs disponibles dans le commerce (article n 153) couple l'un de quatre conducteurs d'entrée avec un conducteur de sortie. Les multiplexeurs 116, 117 et 118 comportent huit entrées et les sorties de ces multiplexeurs engendrent les signaux d'adresse pour les mémoires (ARO à AR5). Le multiplexeur 119 comporte quatre entrées sur ses broches 3, 4, 5, 6 et produit une unique sortie sur la broche 7, le signal d'adresse 1R6. (Les signaux appliqués aux broches 11, 12 et 13 du multi- plexeur 119 ne sont destinés qu'à des fins de verrouillage). Le signal I est appliqué à la broche 14 de chacun des multiplexeurs. Le signal de ce conducteur et le si- gnal appliqué à la broche 2 déterminent laquelle des qua- tre entrées est couplée avec chacune des sorties des mul- tiplexeurs. Le signal est un signal de temporisation de mémoire RAM destiné à rythmer les sept premiers bits et les sept derniers bits de l'adresse de 14 bits multi- plexée appliquée à chacun des dispositifs de mémoire 106. L'autre signal de commande des multiplexeurs est établi par l'intermédiaire de la porte ET 123. Les entrées de cette porte sont le signal d'affichage (DSPLY), qui indi- que que le calculateur est sur un mode d'affichage, et un 19 2617307 signal d'horloge, à savoir un signal de temporisation de I MHz (). La sortie de la porte ET 123 détermine la sélection, soit des signaux d'adresse provenant de l'u- nité centrale, soit des signaux associés au compteur 58 de la figure 1. On supposera pour les besoins de la discussion que l'affichage n'a pas été choisi par la sélection et que, par conséquent, la sortie de la porte 123 est basse. Le signal assure alors la sélection, pour la broche 7 du multiplexeur 116, d'abord du signal d'adresse Ao puis du signal d'adresse A6. D'une manière analogue, chacun des multiplexeurs choisit un signal d'adresse (à l'exception de ceux qui sont associés aux portes OU EXCLUSIF 124 et 125, ce qui sera décrit plus loin). Si le signal d'affichage est haut, et si une sortie de la porte 123 est présente, alors, par exemple, le signal provoque tout d'abord l'application du signal H1, puis du signal V1, au conducteur d'adresse AR1. D'une manière analogue, des signaux correspondant aux comptes vertical et horizontal sont appliqués aux autres conducteurs d'a- dresse au cours de modes d'affichage. L'additionneur 114 est un additionneur numérique ordinaire, capable d'additionner deux courts mots numéri- ques de quatre bits et de produire un signal-somme numé- rique. On utilise un additionneur disponible dans le commerce (article n0 283). La borne de report à partir de l'extérieur (broche 7) est mise à la masse et aucun rapport vers l'extérieur ne se produit étant donné que l'une des entrées (broche 12) est également mise à la masse. L'additionneur additionne le signal numérique cor- respondant à H3, H4 et H5 avec le signal numérique cor- respondant à V3, V4, V3, V4. Le signal-somme résultant est transmis aux multiplexeurs 116, 117 et 118 comme re- présenté. L'addition de ces signaux de compteur horizon- taux et verticaux est utilisée pour assurer la structura- tion plus dispersée précédemment mentionnée. 2617307 L'additionneur 121 est identique à l'additionneur 114 et est monté de manière à additionner les trois bits de compteur verticaux de plus faible poids provenant du compteur 58 (figure 2) avec les signaux VA1, VB1 et VC1. La somme est choisie par lemultiplexeur 120 au cours des modes d'affichage à haute définition et également pendant le défilement, comme décrit plus loin. Ces signaux-somme sont appliqués aux multiplexeurs 117, 118 et 119. Au cours des modes- d'affichage à faible définition, le multiplexeur 120 applique des signaux de masse ou bien le signal de page 2 (T) aux multiplexeurs 117, 118 et 119.(Le signal P= est utilisé à des fins de structuration spéciales qui ne font pas partie de l'invention). Au cours des modes à haute définition pendant lesquels l'affichage ne défile pas, les signaux VA1, VB2 et VB3 sont au potentiel de la masse et, par conséquent, aucune addition ne se produit dans l'additionneur 121 et les signaux VA, VB et VC sont directement transmis aux multiplexeurs 117, 118 et 119. Les signaux d'adresse A10, A11 et A13 provenant de l'unité centrale sont appliqués aux multiplexeurs 117, 118 et 119, respectivement, par l'intermédiaire de portes OU EXCLUSIF 124, 125 et 126, respectivement. Les autres bornes d'entrée des portes 124 et 125 reçoivent le signal C3, tandis que l'autre borne d'entrée de la porte 126 re- çoit le signal C1. (La génération des signaux C1 et C3 est représentée sur la figure 5). Les portes 124, 125 et 126 assurent une compensation de structuration à l'in- térieur de la mémoire. Tels que le calculateur et la mé- moire sont actuellement réalisés, la séquence suivant la- quelle les diverses parties de l'affichage sont engendrées n'est pas la même que la séquence suivant laquelle les données sont extraites de la mémoire en vue de l'affichage. Ces portes fournissent des adresses de compensation et, en fait, provoquent une restructuration de façon que la sé- quence convenable soit maintenue lors de la lecture de don- nées dans la mémoire en vue de l'affichage. Ces portes sont 21 -2617307 représentées afin de donner une description complète du mode de réalisation actuellement préféré, mais elles ne sont pas critiques pour ce qui concerne l'invention. En fonctionnement, le montage de la figure 4, com- me décrit précédemment, assure la sélection des signaux d'adresse qui sont appliqués à chacun des dispositifs de mémoire, soit à partir de l'unité centrale, soit à par- tir du compteur, si le mode d'affichage est choisi. I1- est à noter que tous les bits d'adresse provenant de l'unité centrale ne sont pas appliqués aux multiplexeurs 116 à 119. Certains de ces bits d'adresse, comme décrit plus loin en référenceà la Figure 5, sont utilisés pour créer les divers signaux C et r et assurer ainsi la sélection de différentes rangées dans la mémoire de la figure 6. L'opération de défilement qui est utilisée est quelque peu inhabituelle en ce sens que chaque ligne de l'affichage est déplacée vers le haut séparément (ligne par ligne) une unique ligne de données de la mémoire é- tant déplacée pour chaque image. Cette technique assure un défilement uniforme esthétiquement plaisant. On peut obtenir un défilement de l'écran à raison d'une ligne par image en amenant toutes les données contenues dans la mémoire à une nouvelle position pour chaque image. Tou- tefois, cela demanderait beaucoup de temps et serait peu pratique. Avec la technique décrite, une huitième seule- ment des données contenues dans la mémoire sont déplacées pour chaque nouvelle image. Pour revenir à l'additionneur 121, comme décrit précédemment, les signaux VA, VB et VC sont les trois bits de compteur verticaux de plus faible poids provenant du compteur 58. Ces bits ou comptes représentent, par exem- ple, les huit lignes horizontales de chaque caractère. Dans l'additionneur 121, le signal numérique de trois bits VA1, VB1 et VC1 est ajouté au compte du compteur 58. Ce signal de trois bits est constant pendant chaque image; en 22 2617307 revanche, il est incrémenté pour chaque nouvelle image. Au cours d'une première image, 000 est ajouté au compte vertical. Au cours d'une seconde image, 001 est ajouté; 'au cours d'une troisième image, 010 est ajouté, et ainsi de suite. En ajoutant ce signal numérique au compte provenant du compteur 58, les adresses d'accès à la mémoire sont modifiées dans le sens vertical. Au cours de la première image, pendant laquelle 000 est ajouté, l'affichage n'est pas affecté. Au cours de l'image sui- vante, pendant laquelle 001 est ajouté au compte vertical, au lieu que la première ligne d'un caractère soit tout d'a- bord affichée, la seconde ligne de chaque caractère est affichée au sommet de chaque espace de caractère et chaque ligne suivante du caractère est de même remontée d'une ligne. Si les données contenues dans la.mémoire n'étaient pas déplacées, la première ligne du caractère apparaîtrait à la base de chaque caractère. On remarquera que, lors- que 001 est ajouté à 111 provenant du compteur, le résul- tat est 000. En conséquence, la première ligne des carac- tères serait donc adressée lors du balayage par le faisceau de la huitième ligne des caractères. Pour empêcher cela, les données correspondant à la première ligne de chaque ca- ractère sont déplacées dans la mémoire pour cette image. La première ligne d'un caractère donné est déplacée vers le haut et devient la ligne de base du caractère situé im- médiatement au-dessus. Lorsqu'on ajoute 010, le processus se répète. Par exemple, la troisième ligne de chaque ca- ractère est tout, d'abord affichée dans chaque espace de caractère et la seconde ligne de chaque caractère est re- montée pour devenir la ligne de base du caractère situé immédiatement au-dessus. Ce processus se répète pour fai- re défiler les données. Le mouvement des données dans la mémoire est commandé par l'unité centrale d'une manière bien connue. Ainsi, grâce à l'utilisation de l'additionneur 121, on obtient un défilement uniforme et continu sans déplacer 23 2617307 toutes les données dans la mémoire pour chaque image. Au lieu de cela, un huitième seulement des données sont dé- placées pour chaque image. On va maintenant se référer à la figure 5, sur laquelle est représenté le montage utilisé pour assurer l'adressage à partir de l'unité centrale. En général, les signaux C sont engendrés par les mémoires ROM 127 et 128. Les signaux M sont engendrés par la mémoire ROM 132. Le multiplexeur 130 permet la sélection, soit * des signaux de commutation par bloc, soit du mode d'a- dressage indirect original lorsque la "commutation par bloc" se produit sans ordres directs de l'unité centrale. La mémoire ROM CAS 127 reçoit comme'adresse les. signaux suivants: PRAS, e3, PRAS 1,2, ô, DHIRES, R/W, A11, A13, A14 et A15. Les signaux PRAS$, 3 et PRAS 1, 2 représentent les signaux RAS utilisés. Ces signaux sont hauts lorsque les signaux RAS correspondants sont actifs. Comme décrit précédemment, le signal AY est haut pour les modes d'affichage et le signal DHIRES est haut pour des modes d'affichage à haute définition. La mémoire ROM CAS 128 reçoit comme signaux d'adresse les signaux ABK1, ABK2 et ABK3 et également les signaux DHIRES, Y, IND, A11, A13, A14 et A15. Les mémoires ROM 127 et 128 sont programmées de manière à vérifier les équations suivantes: (1) = (PRASO, 3. (D.I S. (A5..1 A11.w + . È. Az1. R/WN + AI5. A14. 13 + 5. A14. A13. Ail))) (2) S = (DHIRES' + AY. (y ' * ' + ABK1 ABK2 * ABK3) * (. A14) + AY -IND * * * AI* (g ' A13 + A14 A13)) 24 2617307 (3) PCAS3.= PRASO, 3 (rTE ' + AY * * Al A5 A4 + Al5 * A14+ A15 A14))) * (4) PCAS4,= (AY''N! '.(ABK1 ' + ABK1) ABK2) (7 A13 + A14) + AY IND ' (I À rf 'A15 +.D À ABK1 + ABK2 ' À) A14 + AY * ABK1 ABK2 ' (]T3 À A13 + A15 * A1-) + AY IND ABK3 ABK2 (]T ABKI + A15 E3g) ' (A14À + A14)) (5) PCAS5, 7, = (AY- TU ' ' (ABKI ' + E) '* (1r ' A14 A13 +A15 ' ') + AY IND À= ( À À A15 + '- ABK1 + ABK2 ) A14 + AY ' T ABK1 ABK2 ' = ' (- À A14) + AY ' IND ' ABK2 ( ABK1 + A15. I) À (AT1 À A13 + A14 ' A13)) En fait, ces mémoires ROM sont programmées de manière à permettre la sélection de rangées prédéterminées dans la mémoire, sur la base des signaux d'adresse A10, A13, A14 et A15 (en négligeant pour le moment la contribution des signaux M et des autres signaux apparaissant dans les équations). Les sorties des mémoires ROM -C- 127 et 128 sont couplées avec le registre 131. Le registre 131 est un re- gistre disponible dans le commerce qui permet l'activation de signaux de sortie (article n 374). Pendant l'accès à la mémoire, les divers signaux C (C O à CAS 7) sont appliqués à la mémoire de la figure 6 pour permettre la sélection des dispositifs de mémoire appropriés. Le signal USELB provenant de la mémoire ROM r- 127 par l'intermé- diaire du registre 131 assure la sélection, soit du bus A, soit du bus B. Ce signal est transmis aux multiplexeurs 43a et 43b de la figure 3. Au cours du fonctionnement normal, le multiplexeur 2617307 choisit les signaux de commutation par bloc BCKSW 1 à BCKSW 4. Ces quatre signaux (ou selon une variante quatre signaux provenant du bus A) fournissent quatre des entrées (signaux d'adresse) de la mémoire ROM 132. - Les autres entrées de cette mémoire ROM sont les signaux DHIRES, Z PAGE, PA8, PA15, RFSH (régénération) et 7. Ces signaux d'adresse assurent la sélection des signaux RAS 0, 3; RAS 1, 2; RAS 4, 5 et RAS 6, 7. La mémoire ROM 132 est programmée de telle manière que les quatre équations suivantes soient vérifiées PRASO," = (DHIRES + RFSH) + (ABK4' (Z Page. -8) ) + ABK1 ABK2 ' ABK3) ' AY (6) PRAS1, 2 = ' (DHIRES + RFSH) + AY = ( À (ABK4' (ZPAGE') ' 15) + ABK1 ' ABK2 ABK3) + AY ' (1T ABK2 ' ABK4 (ZPAGE'-) PAl5 + ABK1 ABK2 (ABK4 (ZPAGE'r) À 5) (7) PRAS4, 5 = RFSH ' + AY'= ' ( À ABK4 (ZPAGE *) PA15 + ABK1 * (ABK4 (ZPAGE - PA8) * Pi) (8) PRAS6, 7 = RFSH ' + AY (ABK1 * * ABK4 (ZPAGE *) PA15 + * ABK2 ' (ABK4 (ZPAGE FS) * A) (9) Ainsi, les signaux de commutation par bloc (concurremment aux autres signaux d'entrée de la mémoire ROM 132) assu- rent la sélection de rangées prédéterminées dans la mé- - moire conjointement avec les signaux. Les signaux de sortie de la mémoire ROM 132 sont transmis à la mémoire par l'intermédiaire des portes NON ET 142, 143, 144 et 145. Les autres bornes d'entrée de ces portes reçoivent le signal de temporisation RAS. De cette manière, les signaux de sortie de la mémoire ROM 132 sont transmis de façon rythmée à travers les portes 142 à 145, pour produire les signaux représentés sur les figures 5 et 6. 26 2617307 Une importante caractéristique du calculateur dé- crit ici est assurée par le montage représenté dans le cadre en trait interrompu 146. La porte ET 148 reçoit à ses bornes d'entrée les signaux DA7, A12 et C3. La porte NON OU 149 reçoit le signal de page zéro et le signal A5. La sortie de la porte 149,alimente une des entrées de la porte 148 ainsi qu'une des entrées de la porte 150. La sortie de la porte 148 applique un autre signal d'entrée à la porte 150 et ce signal (conducteur 153) est l'un des deux signaux de commande appliqués au multiplexeur 130. Les portes ET 150 et 151 reçoivent également un signal SYNC (de synchronisation) et le signal e. Les sorties respectives des portes 150 et 151 sont couplées avec une porte NON OU 152, la sortie de celle-ci (conducteur 154) étant à son tour couplée avec l'autre borne de commande du multiplexeur 130. Les portes 150, 151 et 152 forment en fait une horloge pour le multiplexeur/registre 130 (le multiple- xeur 130 est un article commercial, article n 399, qui est effectivement un multiplexeur/registre). Cela assu- re la sélection des quatre conducteurs d'entrée infé- rieurs du multiplexeur 130. Toutefois, en raison du si- gnal de synchronisation appliqué à la porte 151, le multi- plexeur 130 choisit les signaux de commutation par bloc chaque fois qu'un code OP est extrait par l'unité centrale. Pour comprendre le fonctionnement du montage re- présenté dans le cadre en trait interrompu 146, il y a lieu de se rappeler que la mémoire de la figure 6 produit une sortie de 16 bits. Comme décrit précédemment, au cours de certains modes d'affichage, 16 bits/ms sont né- cessaires pour l'affichage. Dans les modes de non-affi- chage, huit bits seulement sont nécessaires, en particu- lier pour l'interaction avec l'unité centrale. Lorsque la mémoire est adressée par l'unité centrale au cours des modes d'adressage indirect, les données présentes sur le bus A ne sont ordinairement pas utilisées. En revanche, 7 261730t avec le montage représenté dans le cadre en trait inter- rompu 146, ces données, autrement "inutilisées", sont em- ployées pour former l'équivalent des signaux de commuta- tion par bloc à travers le multiplexeur 130. Chaque fois que l'unité centrale choisit une gamme prédéterminée d'adresses, le multiplexeur 130 choisit l'é- quivalent des signaux de commutation-par bloc provenant du bus A, à condition que le signal DA7 soit haut. (Cela.se produit lorsqu'on adresse comme page zéro la zone d'adres- ses -1800 à 1FFF). Une fois que le signal présent sur le conducteur 153 est haut, il est verrouillé par l'intermé- diaire des portes 150, 151 et 152, ce qui provoque la sé- lection par le multiplexeur 130 des quatre bits provenant du bus A (en supposant que les signaux de temporisation soient hauts). Même si la référence suivante provenant de l'unité centrale ne vise pas cette gamme d'adresses, spéciale, le multiplexeur 130 reste néanmoins verrouillé avec les quatre bits provenant du bus de données. Toute- fois, lorsque l'impulsion SYN retombe, ce qui est une in- dication du fait qu'un code OP est en train d'être extrait, le potentiel de signal présent sur le conducteur 154 s'é- lève, ce qui provoque une recommutation du multiplexeur sur les signaux de commutation par bloc. Ce qui se produit en fait est que, lorsque l'unité centrale choisit cette gamme d'adresses spéciale, (et à condition que le signal-DA7 soit haut) les bits DA0 à DA3 qui sont stockés en mémoire provoquent une restructuration, c'est-à-dire que l'adresse provenant de l'unité centrale accède à une partie différente de' la mémoire. Avec l'ex- traction de chaque code OP, la structuration repasse au- tomatiquement sur les signaux de commutation par bloc. Point important, la restructuration qui se produit est com- mandée par les bits stockés dans la mémoire RAM (DA$ à DA3). Ainsi, avec l'information de restructuration stockée dans la mémoire RAM, une inversion peut se produire entre dif- férentes parties de la mémoire sans que cela exige des si- 28 2617307 gnaux de commutation par bloc, ou analogues, de l'unité centrale. Cela améliore la performance de l'unité centrale étant donné que du temps de fonctionnement de celle-ci n'est pas utilisé pour la restructuration. En outre, ce- la constitue un outil de programmation commode. Pour certains langages de programmation, il est désirable de ranger les données et le programme dans des parties séparées de la mémoire. Par exemple, la mémoire 128K peut être subdivisée en deux mémoires 64K, l'une pour le programme et l'autre pour les données. Une commu- tation peut se produire entre ces parties de mémoire sans génération de signaux de commutation par bloc par l'unité centrale avec le montage décrit ci-dessus. Cette disposi- tion est particulièrement utile lorsqu'on utilise le lan- gage de programmation Pascal. On va maintenant décrire le sous-ensemble d'affi- chage. Le sous-ensemble d'affichage 48 de la figure 1 re- çoit des données du bus A et du bus B et convertit ces données en signaux vidéo, qui peuvent être utilisés pour afficher des caractères alphanumériques ou d'autres ima- ges sur un affichage à tube à rayons cathodiques balayé à trame standard. Le sous-ensemble d'affichage 48 engen- dre spécifiquement sur le conducteur 197 un signal vidéo couleur NTSC standard et un signal vidéo en noir et blanc sur le conducteur 198 (figure 8). Ce sous-ensemble d'af- fichage reçoit, en plus d'autres entrées, un signal de synchronisation et plusieurs signaux d'horloge. Par sim- plification, le signal de référence couleur standard de 3,57945 MHz est indiqué par l'abréviation C3.5m. Le dou- ble et le quadruple de cette fréquence sont indiqués, res- pectivement, par les abréviations C7m et C14m. Avant de décrire les détails du sous-ensemble d'af- fichage 48, un exposé d'un dispositif d'affichage de la technique antérieure facilitera la compréhension du sous- ensemble d'affichage suivant l'invention. Dans le brevet 29 2617307 US 4 136 359 est décrit un dispositif d'affichage vidéo, qui est réalisé dans un calculateur disponible dans le commerce, Apple-II, vendu par Apple Computer Inc., Cuper- tino, Californie, E.U.A. Dans ce dispositif, des mots' numériques de quatre bits sont décalés en parallèle jus- que dans un registre à décalage. Ces mots circulent a- lors dans ce registre à 14 MHz pour dfinir une forme d'onde ayant des composantes à 3,5 MHz. En se référant à la figure 9, ligne 206, on va maintenant supposer que le mot numérique 0001 est placé dans le registre à décalage et circule à une fréquence de 14 MHz. Le signal résul- tant qui a une composante de 3,5 MHEz est représenté sur le conducteur 206. La relation de phase entre cette com- posante et le signal de référence à 3,5 MHz détermine la "couleur" du signal vidéo résultant. On modifie cette rela- tion en changeant le mot de quatre bits placé dans le re- gistre à décalage. Comme expliqué dans le brevet cité ci-dessus, si le signal 1000 est placé dans le registre et y circule, la relation de phase résultante de la com- posante à 3,5 MHz produit la couleur marron; ce signal est représenté sur la ligne 208. Dans cette technique an- térieure, la luminance était déterminée par la composante de courant continu des signaux tels que ceux qui sont représentés sur les lignes 206 et 208. Le sous-ensemble d'affichage 48 de la figure 1 utilise également des mots de quatre bits pour engendrer les divers signaux couleur de manière assez analogue à ce qui se passe dans le dispositif décrit ci-dessus. En se référant à la figure 8, on voit que des mots de quatre bits représentatifs de couleurs (seize. couleurs possi- bles) sont appliqués au bus 180. (La génération de ces mots sera décrite plus loin de façon détaillée. en référen- ce à la figure 7). Au lieu d'utiliser un registre à déca- lage qui fait circuler le mot de quatre bits, on obtient le même résultat en utilisant un multiplexeur 205-qui as- sure une sélection séquentielle de chacun des conducteurs 2617307 du bus 180. Les signaux présents sur le bus 180 fournis- sent également un signal de luminance et un signal vidéo noir et bland avec une échelle de gris. Les quatre conducteurs du bus 180 sont couplés avec un multiplexeur 205; ce multiplexeur reçoit égale- ment les signaux de temporisation'C7m et 3. m. Ces deux signaux de temporisation provoquent la sélection séquen- tielle de chacun des quatre conducteurs et leur couplage avec le conducteur 191. (On remarquera que l'ordre dans lequel les divers conducteurs du bus 180 sont choisis ne change pas). En fait, le multiplexeur fonctionne de manière à mettre en série le signal parallèle provenant du bus 180. On supposera pour les besoins de l'explication que les signaux numériques du bus 180 sont 1000, comme indiqué sur la figure 8. Le signal du conducteur 191 sera alors 10001000-.... La sortie du multiplexeur 205 couplée avec l'entrée de l'inverseur 204 reçoit également dans un or- dre séquentiel les signaux provenant du bus 180, mais, toutefois, dans un ordre différent. Dans l'exemple repré- senté, l'entrée de l'inverseur 204 est 00100010.... A- près inversion, il en résulte le signal 11011101... sur le conducteur 192. En fait les signaux des conducteurs 191 et 192 sont additionnés par des résistances 199 et 200. La forme d'onde résultante est un signal de courant alter- natif (pas de composante de courant continu) représenté sur la figure 9, ligne 209. On voit donc qu'avec le mon- tage décrit est engendré un signal de chrominance qui est dans une relation de phase prédéterminée avec le signal de référence couleur à 3,5 MHz. Cette relation de phase qu'on fait varier en changeant les signaux du bus 180 détermine la "couleur" du signal vidéo sur le conducteur 197. Dans l'affichage de la technique antérieure décrit ci-dessus, la composante de courant continu du signal couleur détermine la luminance. Suivant l'invention, les signaux du bus 180 sont appliqués à la base d'un transis- tor 195, qui reçoit également un signal de courant alterna- tif de chacune des résistances 199 et 200, et le niveau de luminance également déterminé par les signaux du bus 180. Ces entrées du transistor 195, conjointement avec le si- gnal 3.m engendrent sur le conducteur 197 un signal cou- leur NTSC de qualité améliorée par rapport à celui que produit le dispositif de la technique antérieure mentionné ci-dessus. Dans certains cas, les signaux du bus 180 sont tous des "uns" binaires ou tous des zéros binaires. Lorsque cela se produit, il n'y a pas de composante de courant al- ternatif provenant des résistances 199 et 200 (pas de si- gnal couleur) et le signal résultant sur le conducteur 197 est "noir" ou "blanc". Les conducteurs du bus 180 sont également couplés, par l'intermédiaire de résistances, avec la base d'un - transistor 196. Chacune de ces résistances a une valeur différente pour assurer une "pondération" du signal bi- naire. Cette pondération est utilisée pour des afficha- ges non en couleur pour produire des nuances"de gris" par opposition à un affichage en noir et blanc pur. Les si- gnaux binaires du bus 180 excitent le transistor 196 pour produire un signal vidéo sur le conducteur 198. Le signal RGB est engendré au moyen de sommes pondérées de ces mêmes cinq signaux. On va maintenant se référer à la figure 7 sur la- quelle on peut voir que des données provenant de la mémoire sont appliquées à partir du bus A et du bus B à des re- gistres 159 et 158, respectivement. Ces registres sont "rythmés" par le signal d'horloge à 1 MHz et son complé- ment, ce qui permet le transfert.séquentiel de mots de huit bits toutes les demi-millisecondes. Comme décrit plus loin, dans certains modes d'affichage, les données sont transférées à la fréquence de 2 MHz et dans d'autres modes d'affichage, à une fréquence de I MHz. Les registres 158 et 159 sont couplés avec un bus d'affichage 160 à huit conducteurs. Ce bus d'affichage transfère des données aux registres 164 et 173 ainsi que des adresses à une mémoire 162. Les registres 164 et 173 et la mémoire 162 sont activés au cours de modes d'affi- chage spécifiques, comme on le verra plus loin. La mémoire de caractères 162, dans le mode de réa- lisation actuellement préféré, est une mémoire à accès di- rect qui stocke des profils binaires représentatifs de caractères alphanumériques. Chaque fois que le calcula- teur est mis sous tension, l'information de caractères est transférée de la mémoire ROM 50 dans la mémoire de ca- ractères 162 au cours d'une période d'initialisation. Au cours de modes d'affichage de caractères, les signaux pro- venant du bus d'affichage 160 sont des adresses identifiant des caractères alphanumériques particuliers stockés dans la mémoire de caractères 160. Les signaux de compteur verti- caux VA, VB et Vc (précédemment décrits conjointement avec l'additionneur 121 de la figure 4) identifient la li- gne particulière de chaque caractère qui doit être affichée. En conséquence, la génération des signaux numériques repré- sentatifs de chacun des caractères s'effectue d'une manière ordinaire. Le signal de sept bits représentatif de chaque ligne de chaque caractère (sortie de mémoire) est appliqué au registre à décalage 167. Au moyen de signaux de tempo- risation non indiqués, une sélection, soit duregistre 164, soit de la mémoire de caractères 162 a lieu pour permettre au registre à décalage 167 de recevoir soit des données directement du bus A ou du bus B, soit une information de caractères alphanumériques de la mémoire 162. Les sept bits d'information provenant, soit de la mémoire 162, soit du registre 164, sont mis en série par le registre à décalage 167, soit à une fréquence de 7 MHz, soit à une fréquence de 14 MHz, selon le mode d'affichage. Les données mises en série sont appliquées par le conduc- teur 185 au multiplexeur 169, broches 1 et 4. L'inverse de ces données est également appliqué au multiplexeur 169, 33 2617307 broche 3. Le conducteur 185 est également couplé en tant qu'entrée avec le multiplexeur 166 et avec le registre (entrée 1). La sortie 1 du registre 170 (conducteur 186) est couplée avec le multiplexeur 169, broche I; avec le registre 170 (entrée 2); et avec le multiplexeur 166. La sortie 2 du registre 170-(conducteur 187) est couplée avec l'entrée 3 du registre 170 et également avec le - multiplexeur 166. La sortie 3 du registre 170 (conduc- teur 187) constitue une troisième entrée pour le multi- plexeur 166. L'entrée 4 du registre 170 est alimentée par la sortie du multiplexeur 169 (conducteur 189). La sortie 4 du registre 170 (conducteur 190) fournit l'un des signaux de commande du multiplexeur 171. * Le multiplexeur 171 choisit, soit les quatre con- ducteurs du bus 183, soit les quatre conducteurs du bus 184. La sortie du multiplexeur 171, bus 180, engendre le signal de quatre bits décrit à propos de la figure 8. Pendant l'un des modes d'affichage à haute définition (AHIRES), le multiplexeur 171 est commandé par un si- gnal de temporisation provenant de la sortie de la porte 178. Le multiplexeur 166 choisit, soit les conducteurs du bus 181, soit ceux du bus 182. La sortie de ce mul- tiplexeur produit les signaux pour le bus 184. Dans tous les modes d'affichage, sauf le mode AHIRES, le multiple- xeur 166 choisit le bus 181. Par conséquent, le multi- plexeur 171 reçoit généralement les signaux du bus 174. Pour les besoins de la description ci-dessus, et en vue de l'explication donnée ci-après de certains des modes d'affichage, on a fait une hypothèse simplificatri- ce. Les signaux appliqués au bus 180 par le multiplexeur 171 sont commandés, pour la-plupart des modes, par le si- gnal mis en série du conducteur 190. Ce signal mis en série est en synchronisme avec les signaux d'horloge C7m ou C14m. Le multiplexeur 205 de la figure 8 qui, comme 34 2617307 décrit précédemment, assure "l'assemblage" du signal numé- rique en parallèle présent sur le bus 180, fonctionne en synchronisme avec le multiplexeur 171. Dans la descrip- tion ci-dessus, ainsi que ci-après sauf indication con- traire, on a supposé que, par exemple, si le multiplexeur 171 applique des "uns" ou des zéros binaires partout sur le bus 180, le signal du conducteur 191 sera formé soit de "uns", soit de zéros. De même, pour cette condition, le signal du conducteur 192 ne comprendra que des zéros ou des "uns" binaires et, par conséquent, aucun signal de sourant alternatif ne sera engendré à la base du transis- tor 195. Toutefois, dans la réalisation effective, il existe une différence "de phase" entre le fonctionnement rythmé du multiplexeur 171 et l'échantillonnage des si- gnaux du bus 180 par le multiplexeur 205. Cela se tra- duit par un premier signal de courant alternatif cons- tant sur la base du transistor 195, même lorsqu'il ap- parait que des "uns" binaires sont partout présents sur le bus 180, et par un second signal de courant alternatif constant lorsque des zéros binaires sont partout présents sur le bus 180. En conséquence, dans la présente des- cription, lorsque celle-ci indique que des signaux i'noirs" ou "blancs" sont engendrés, en fait dans la réalisation courante deux couleurs constantes sont engendrées sur un affichage en couleur. Lorsqu'on désire obtenir vraiment du noir et blanc, on procède à une suppression de la cou- leur, par exemple au moyen du signal de salve couleur. Le montage de la figure 7, conjointement avec ce- lui de la figure 8, permet plusieurs modes d'affichage dis- tincts. Le premier de ces modes assure un affichage com- prenant. 40 caractères (ou espaces) par ligne horizontale. Cela exige un débit binaire de 8 bits/MHz, soit la moitié du débit binaire que la mémoire est capable d'assurer. Dans ce mode, une donnée est chargée à partir du bus A pendant une période de 0,5 ms sur deux (le bus B n'est pas utilisé pendant ce mode). Cette donnée adresse la 2617307 mémoire de caractères 162 et, conjointement avec les si- gnaux VA, VB et VC, transmet la ligne de caractère appro- priée (s'ept bits) au registre à décalage 167. Pendant ce mode, les registres 164 et 173 sont désactivés. Pour ce mode, le registre à décalage 167 décale les données à une fréquence de 7 MHz (à noter que le 'signal est haut, ce qui permet au signal à 7 MHz provenant de la por- te 175, de commander le registre à décalage 167). Chaque signal de sept bits est décalé séquentiellement jusque sur le conducteur 185 puis jusqu'au conducteur 189, étant donné que le multiplexeur 169 choisit la broche 4. Les données sont décalées à travers le registre 170 jusque sur le conducteur 190. Le signal binaire séquentiel du con- ducteur 190 provoque la sélection de l'un dés bus 183,184. Pendant ce mode, les quatre conducteurs du bus 183 sont-reliés à +V (le registre 173 est désactivé); en con- séquence, la sélection du bus 184 produit quatre "uns" bi- naires. La sélection du bus 184 produit quatre zéros bi- naires par l'intermédiaire du bus 181. Le signal binaire séquentiel du conducteur 190 produit donc, soit des "uns" binaires partout, soit des zéros binaires partout, sur le bus 180. Tel qu'il est décrit ci-dessus, le montage de la figure 8 assure un affichage en noir et blanc à 40 carac- tères par ligne. Si le moyen de temporisation d'inversion et de clignotement 172 est choisi, chaque fois que le registre à décalage 167 est chargé, le multiplexeur 169 commute sa sortie entre les broches 3 et 4. Cela provoque une "in- version" des caractères: des caractères blancs sur fond noir deviennent des caractères noirs sur fond blanc, et vice versa. Au cours du mode d'affichage à 80 caractères par ligne, les registres 158 et 159 sont respectivement char- gés pendant des périodes séquentielles de 0,5,ps (cela utilise la fréquence de cycle de 2 MHz précédemment men- tionnée). Le registre à décalage 167 décale les données - - - - - - - - - _ _ _ _ _ _ _ _ _ _ _ _ _ 36 2617307 de caractères à partir de la mémoire 162 à une fréquence de 14 MHz. Les données mises en série à la fréquence de 14.MHz sont décalées à travers le registre 170 et comman- dent, ici encore, le multiplexeur 171,-comme décrit pré- -- c4demment. (A noter que le registre 170 est toujours rythmé à la fréquence de 14 MHz). Un clignotement peut ici encore être obtenu, comme décrit précédemment. Dans un autre mode d'affichage de caractères alpha- numériques, le fond ou arrière-plan de chaque caractère peut être d'une couleur donnée et le caractère lui-même (ou avant-plan) d'une autre couleur. Ce mode assure l'affichage de 40 caractères par ligne. L'identification des caractères (adresse pour la mémoire RAM 162) est trans- mise sur le bus A au registre 159 à une fréquence de 1 MHz. L'information couleurs (couleur d'arrière-plan et couleur d'avant-plan) est transmise sur le bus B sous la forme de deux mots de quatre bits au registre 158. De la manière précédemment décrite, l'adresse provenant du registre 159 choisit le caractère approprié dans la mémoire 162 et transmet cette information au registre à décalage 167. L'information couleur provenant du bus B est trans- férée au registre 173. Pour les besoins de l'explication, on supposera que les quatre bits identifiant la couleur rouge pour l'arrière-plan se trouvent sur le bus 184 (en provenance du registre 173 et du multiplexeur 166) et que quatre bits représentant la couleur bleue pour l'avant-plan se trouvent sur le bus 183. (A noter que lorsque le re- gistre 173 est activé, les signaux provenant de ce re- gistre ont priorité sur les "uns" et zéros binaires qui, autrement, apparaissent sur les conducteurs du bus 174). Le signal binaire séquentiel représentatif du caractère lui-même sur le conducteur 190 choisit soit la couleur bleue à partir du bus 183 pour le caractère lui-même, soit la couleur rouge à partir du bus 184 pour le fond. Les signaux numériques représentatifs de ces couleurs sont transférés au bus 180 et transmettent les données de cou- leur au montage de la figure 8. Pour les affichages en noir et blanc, une échelle "de gris" est obtenue par l'intermédiaire du circuit de pondération associé au transistor 196 de la figure 8. Ici encore, le multiple- xeur 169 peut, par l'intermédiaire du moyen de temporisa- tion 172, alterner entre le signal du conducteur 185 et son inverse, ce qui a pour effet d'interchanger les cou- leurs d'avant-plan et d'arrière-plan.. Au cours des modes graphiques à haute définition, la mémoire de caractères 162 n'est pas utilisée mais, au lieu de cela, des données provenant de la mémoire four- nissent directement l'information de configuration pour l'affichage. Cela exige davantage de structuration de données à partir de l'intérieur de la mémoire centrale, du fait que de nouvelles données sont nécessaires pour chaque ligne de l'affichage. (A noter que lorsque des caractères sont affichés, la mémoire de caractères 162 fournit les différents signaux nécessaires pour les huit lignes de chaque rangée de caractères). Au cours de ces modes à haute définition, le registre 164 est activé et la mémoire de caractères 162 désactivée. En conséquence, les données provenant du bus A et du bus B sont décalées jusque dans le registre à décalage 167. Dans ces modes, le signal "HRES" appliqué au multiplexeur 169 provoque une sélection par celui-ci entre les broches 1 et 2. La broche 2 fournit le signal directement à partir du re- gistre à décalage 167, tandis que le signal de la broche 1 est en fait le signal du conducteur 185 retardé d'une période par le signal C14m. Ce retard se produit à tra- vers le registre 170 de l'entrée 2 à la sortie 2, étant donné que ce registre est rythmé à C14m. Au cours-d'un premier mode graphique, des données provenant du bus d'affichage 160 sont chargées dans le re- gistre à décalage 167 avec un débit binaire de 7 bits/MHz. Les données sont mises en série sur le conducteur 185 et, de la manière précédemment décrite en ce qui concerne l'af- 38 2617307 fichage de caractères, elles commandent la sélection de "uns" binaires partout ou de-zéros binaires partout par l'intermédiaire du multiplexeur 171. Il est à noter que, comme décrit précédemment, dans le mode de réalisation actuellement préféré, sauf si l'on utilise une suppression de la couleur, cela ne se traduit pas par un affichage en noir et blanc, mais bien par un affichage en deux cou- leurs. Si un bit haut est présent sur le conducteur 140 du bus d'affichage, le moyen de temporisation d'inversion et de clignotement 172 fait alterner le multiplexeur 169 entre les broches 1 et 2. Cette commutation se produit à une fréquence de 1 MHz et assure un déphasage d'une série de sept bits de données sur deux séries de ce genre ap- pliquées au multiplexeur 171-sur le conducteur 190. Cela se traduit par la génération d'une couleur supplémentaire sur l'affichage pour une série de sept bits de données sur deux. Pour les modes graphiques décrits ci-dessus, lors- que le registre à décalage 161 assure un décalage à une fréquence de 7 MHz, huit bits peuvent être appliqués au bus pendant chaque période. Plus précisément, comme dans le cas des couleurs d'arrière-plan et d'avant-plan diffé- rentes pour le mode d'affichage à 40 caractères par ligne, deux mots couleur de quatre bits sont introduits par déca- lage dans le registre 173 à une fréquence de 1 MHz. Le multiplexeur 171 assure alors une sélection entre deux couleurs prédéterminées présentes sur les bus 183 et 184. Il est à noter que ces couleurs peuvent être changées à une fréquence de 1 MHz. Dans un mode couleur supplémentaire désigné par "AHIRES", le multiplexeur 171 fonctionne sous la commande des portes 176, 177 et 178. En fait, le multiplexeur 171 choisit le bus 184 et verrouille les signaux sur ce bus tous les quatre cycles de l'horloge à C14m. Des données sont introduites par décalage dans le registre à décalage 167 à partir du bus A et du bus B toutes les demi-micro- 39 X2617307 secondes; le registre 167 fonctionne. sous la commande du signal à C14m. Chaque bit de donnée-du conducteur 185 est décalé, tout d'abord jusqu'au conducteur 186, puis jusqu'au conducteur 187 et enfin jusqu'au conducteur 188. Ces conducteurs sont couplés avec le multiplexeur 171 par l'intermédiaire du multiplexeur 166 qui choisit le bus 182, étant donné que le signal AHIRES est haut. En fait, ce qui se produit est que des mots couleur de quatre bits sont mis en série sur le conducteur 185 puis remis en pa- rallèle sur le bus 182.' Etant donné que le multiplexeur 171 verrouille les signaux présents sur le bus 184 tous les quatre cycles du signal à C14m, un nouveau mot couleur est engendré à une fréquence de 3,5 MHz sur le bus 180. L'affichage résultant est formé de blocs oolorés de 140 x 192, chacun de ces blocs pouvant être de l'une quelconque de seize couleurs différentes. Dans le dernier mode d'affichage,généralement uti- lisé avec une suppression de la couleur, des données sont introduites par décalage dans le registre à décalage 167 à partir du bus d'affichage, avec un débit-binaire de 14 bits/MHz. Les données sont mises en s.érie sur le conduc- teur 185-et commandent la sélection, soit de "uns" binai- res partout, soit de zéros binaires partout par l'intermé- diaire du multiplexeur 171. Cela assure un affichage gra- phique de définition-maximale pour l'ensemble. On voit qu'on a décrit ci-dessus un microcalcula- teur offrant des possibilités d'affichage vidéo. Le cal- culateur est fabriqué à partir d'articles disponibles dans le commerce et assure une utilisation rationnelle de ces articles. De nombreux programmes-existants, y compris - beaucoup de ceux qui fonctionnent sur le calculateur Apple-II, peuvent être utilisés dans le calculateur dé- crit ci-dessus. dlTjO7 REVENDICATIONS 1. Calculateur numérique comprenant une unité centrale de traitement (65), une mémoire vive (60), un bus d'adresses.(46), interconnectant ladite unité centrale de traitement et ladite mémoire vive de telle.manière que ladite unité centrale adresse des emplacements dans ladite mémoire vive, et un bus de données (42) relié à l'unité cen- trale et à la mémoire vive, ladite unité centrale de traite- ment adressant, pour certaines fonctions, la page zéro de ladite mémoire vive en délivrant des zéros binaires sur cer- taines lignes (A8-A15) dudit bus d'adresses, ledit calcula- teur étant caractérisé en ce qu'il comprend: - un circuit de détection (41) pour détecter lesdits zéros binaires sur lesdites certaines lignes du bus d'adresses; - un registre (52) pour stocker des signaux numériques, couplé au bus de données pour recevoir depuis celui-ci des signaux numériques; - un multiplexeur (47) pour effectuer une sélection entre lesdits signaux numériques stockés dans le registre et lesdites certaines lignes du bus d'adresses, ledit multiplexeur étant commandé par ledit circuit de dé- tection de manière à sélectionner ledit registre lorsque lesdits zéros binaires sont détectés sur lesdites certaines lignes du bus d'adresses; de telle sorte que des données relatives à certaines fonc- tions normalement stockées en page une de ladite mémoire vive peuvent être stockées ailleurs dans ladite mémoire vive tout en étant encore adressées facilement par l'unité centrale de traitement. 2. Calculateur selon la revendication 1, caracté- risé en ce que l'un desdits signaux stockés provenant du registre (52) est appliqué au multiplexeur (47) par l'inter- médiaire d'une porte "OU exclusif" (90), ladite porte étant reliée à l'une desdites certaines lignes du bus d'adresses. 3. Calculateur selon l'une des revendications 1 et 2, caractérise en ce qu'il délivre un signal de pile de variante (ALT STK) et en ce que le circuit de détection (41) détecte également des adresses de page une sur ledit bus d'adresses (46), le multiplexeur (47) sélectionnant ledit registre (52)' si lesdites adressesde-page une sont détectées et si ledit signal de pile de variante est dans un état prédéterminé. 4. Calculateur numérique comprenant une unité centrale de traitement (65), une mémoire vive (60), un bus d'adresses (46) interconnectant ladite unité centrale de traitement et ladite mémoire vive de telle manière que la- dite unité centrale adresse des emplacements dans ladite mémoire vive, et un bus de données (42) interconnectant ladite unité centrale et la mémoire vive, ladite unité cen- trale de traitement adressant, pour certaines fonctions, des emplacements prédéterminés dans ladite mémoire vive au moyen d'une gamme prédéterminée de signaux d'adresses le- dit calculateur étant caractérisé en ce qu'il comprend: - un moyen de détection (41) pour détecter ladite gamme prédéterminée de signaux d'adresses, relié audit bus d'adresses; - un moyen formant registre (52) pour stocker des signaux numériques, relié audit bus de données; et - un moyen de commutation (47.) pour appliquer lesdits signaux numériques stockés dans le moyen formant registre au bus d'adresses lorsque ledit moyen de détection détecte ladite gamme prédéterminée desdits signaux d'adres- ses, ledit moyen de commutation agissant également pour ap- pliquer lesdits signaux numériques stockés dans le moyen formant registre au bus d'adresse lorsqu'un certain signal d'accès direct à la mémoire-(DMA1) est dans un état prédé- terminé; - une mémoire morte (50) reliée entre ledit bus d'adresses et ledit bus de données, ladite mémoire morte, en réponse à des signaux présents sur le bus d'adresses, û1/ 31 LI/ fournissant des instructions à ladite unité centrale de traitement sur le bus de. données pour amener ladite unité centrale à incrémenter des signaux d'adresses lorsque ledit signal d'accès direct à la mémoire est dans ledit état pré- déterminé; ledit registre (52) fournissant un pointeur pour des empla- cements de la mémoire, vive lorsque ledit signal d'accès di- rect à la mémoire est dans ledit 6tat prédéterminé, et le- dit registre fournissant des signaux d'adressespour la mé- moire vive lorsque lesdites certaines fonctions sont sélec- tionnées par l'unité centrale, de telle sorte que des données reliatives auxdites certaines fonctions, normalement stockées par l'unité centrale dans lesdits emplacements prédéterminés, peuvent être stockées ailleurs dans la mémoire vive, ce qui améliore la perfor- mance dudit calculateur. 5. Calculateur selon la revendication 4, carac- térisé en ce que le moyen de commutation (47) comprend un multiplexeur, qui sélectionne ledit registre (52) lorsque le moyen de détection détecte des zéros binaires partout ou lorsque ledit signal d'accès direct à la mémoire (DMA1) est dans ledit état prédéterminé.