FR 2520897 A1 19830805 FR 8305230 A 19830330 2520 $ 97 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 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 O 4 136 359. Un calculateur numérique comprenant une unité centrale de traitement (CPU) et une mémoire à accès di- rect (RAM) 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é- -lioré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/M Hz) 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. 252089 ? 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-. paiement 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. 252 È 89 ? 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 I"Z"l et est couplé avec le multiplexeur 47 par le bus "IZ"I 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 Ni 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 252089 ? test, et autres données de nature générale "linitiale"t en vue de l'initialisation de l'ensemble. Le bus de données 42 transmet des données à la mémoire à accès direct (RAIM) 60 ainsi que vers des bbr- 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 N 2 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 Lapa - 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éees 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 252089 ? signaux de temporisation, y compris le signal de référence couleur standard représenté comme étant à 3,5 M Hz (C 3 5 m). 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 calculateur décrit est un organe disponible dans le com- merce, le 6502 A 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 6502 A (unité centrale 65) est utilisée dans la présente description Par exemple, la broche 6 reçoit le signal d'interruption non masquable (-TNM) et la broche 4 est couplée de manière à recevoir le signal de demande d'interruption (IRQ) 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 A 0-A 7 et A 8-A 15 Les signaux de données associés à l'unité centrale 65 sont indiqués par D -D 7. Comme il apparaîtra 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-A 7 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 252689 ? ROM 50 Les signaux AO-A 7, après avoir traversé le tampon 103, sont appliqués au sous-ensemble de mémoire Les signaux d'adresse A 8-A 15 (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 47 a et 47 b Le contenu du registre Z, 52 de la figure 1 est é- galement transmis aux multiplexeurs 47 a et 47 b par l'in- termédiaire du bus Z (Z 1-z 7) Les multiplexeurs 47 a et 47 b permettent la sélection, soit des signaux AS-A 15 pro- venant de l'unité centrale 65, soit du contenu du registre Z (Z 1-Z T) pour adresser la mémoire RAM 60 Les sorties de ces multiplexeurs sont désignées par A 8-A 15; 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 Z 0, ce signal est appliqué au multiplexeur 47 a par l'intermédiaire de la porte OU EXCLUSIF 90 pour des raisons qui seront expliquées plus loin Les signaux d'adresse A-A 1 sont également transmis à la mémoire ROM 50 et, par conséquent, les signaux Ao-A 11 sont utili- sés pour adresser la mémoire ROM 50 Les signaux As-A 15 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 6 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 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 N 2 à 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 43 a. 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 43 b Les multiplexeurs 43 a et 43 b 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/M Hz 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 no SY 2333 disponible dans le commerce. On va maintenant examiner ce circuit logique (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 A 8 ainsi que le signal de pile de va- riante désigné par ALT-ST La sortie de cette porte alimente l'une des entrées de la porte ET 87 Le signal A 8 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 A 9 et A 10 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 Al-A 15 sont appli- qués aux bornes d'entrée de la porte NON OU 84 Le si- gnal A 1 est également appliqué à une borne d'entrée de la porte NON ET 85. Les sorties des portes ET 87 et 86 (par 1 _ diaire de la porte NON OU 89) commandent 165 multiplexeurs 47 a et 47 b 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 A 8-A 15 sont tous des zéros Les zéros des bits A 9-A 15 sont détectés par les portes 83 et 84 Si toutes les entrées de ces portes sont des zéros, les sorties de ces portes sont hautes, état -qui est communiqué à la porte 87 Le bit A 8, 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 A 8 est haut et que Ag-A 15 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 A A 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 AI STX) Etant donné que le signal ALT STK est bas et que A 8 est haut, un niveau haut appara It à 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- 252089 ? 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 47 a et 47 b 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 A 8 La porte OU EXCLUSIF 90 se comporte comme un inverseur sélectif Si A 8 est haut et Z O bas, alors A 8 est bas à la sortie du multiplexeur 47 a On remar- quera que, pendant la sélection de la page zéro, alors que A 8 est bas, le signal Z O est directement transmis par la porte 90 à la sortie du multiplexeur 47 a. On voit donc que le circuit logique, conjointement avec le signal ALT STK, 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 F 800 et F 8 FF Par l'intermé- diaire d'un circuit logique non représenté sur les figu- res 2 et 3, le signal ROM SEL est rendu bas pour les adresses comprises entre F 000 et FFFF Ce signal est com- muniqué à la porte 93 et provoque une élévation du niveau de sortie de la porte 92 (Di-M 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 A 8, A 9 et A 10 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- 252089 ? 7 gnaux hauts De plus, le fait que Ail est haut est direc- tement communiqué à la porte 85 Par conséquent, pour une adresse comprise entre F 800 et F 8 FF, le signal TMA OK 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 1 et 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 DAM 1, transmis par l'intermédiaire de la porte 92 et de l'inverseur 93, rend bas le signal T ROM-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 DAM 1, 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 O 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 N 2 et du bus 42, ou lues dans la mémoire RAM par l'intermé- diaire des bus A et B et du bus N 2. 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. 252089 ? Le sous-ensemble de mémoire, indiqué sur la figure 1 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-A 15), 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 "siqnaux et signaux RAS" 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 à 64 K multiplets Cette capacité de mémoire est insuffisante dans de nombreuses applica- tions, par exemple ldrsqu'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 6- moire d'une capacité de 96 K multiplets ou de 128 K 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 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 fonctionnement 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 96 K multiplets La mémoire est organisée en six rangées ou lignes, comprenant chacune huit dispositifs de mémoire 16 K, telles que les rangées 111 et 112 Dans le mode de réalisation actuellement préféré, on utilise des mémoires RAM dynamiques MOS (ar- ticle N O 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 Toute ois, à titre d'e- xemple, on a indiqué que le conducteur 107 applique le bit de donnée D 7 à 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 R. A titre d'exemple, on a indiqué que le conducteur 108 con- necte trois bornes de sortie de dispositifs 106 au conduc- teur DB 7 du bus B, tandis que le conducteur 109 connecte trois bornes de sortie de dispositifs 106 au conducteur DA 7 du bus A. Les dispositifs de mémoire 106 décrits sont orga- -nisés chacun sous la forme d'une mémoire 16 K 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 CAS et RAS,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 CAS et RAS et avec les signaux d'adresse, pour régénérer les dispositifs dy- namiques. Chaque rangée de dispositifs de mémoire 106 recoit une combinaison spécifique exclusive de signaux M 3 et Aï. Par exemple, la rangée 111 reçoit les signaux -CA 5, 7 et TM 4, 5; d'une manière analogue, la rangée 112 reçoit les signaux CAS O et RA 0, 3 La génération de ces si- gnaux M et M 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 à 96 K 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 à 128 K multiplets en utilisant des dispositifs de mémoire 32 K tels que l'article N O 4132 Dans ce cas, on utilise quatre rangées de huit dispositifs de mémoire 32 K, chacune de ces rangées recevant deux signaux CAS et RAS. Avant de passer en revue la figure 4, il est utile de posséder une compréhension générale de l'organisation 252089 ? 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 H -H 5 et V -V 4 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 plusfort 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é uniquement par 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 252089; 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 114 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 O 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 signetx 41 '-dsz&- les mémoires (ARO à AR 5) 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 1 R 6. (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 MX 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 UX 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 signal d'horloge, à savoir un signal de temporisation de 1 M Hz ( 1) 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 Et assure alors la sélection, pour la broche 7 du multiplexeur 116, d'abord du signal d'adresse Ao puis du signal d'adresse A 6 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 Et provoque tout d'abord l'application du signal H 1, puis du signal V 1, au conducteur d'adresse ARRI 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 N O 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 à Hi, H 4 et H 5 avec le signal numérique cor- respondant à V 3, V 4, V 3, V 4 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. 2520897 ? 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 VAI, VB 1 et VCM. La somme est choisie par le multiplexeur 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 (Mw) aux multiplexeurs 117, 118 et 119 (Le signal PUE 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 VA 1, VB 2 et VB 3 sont au potentiel de la masse et, par conséquent, aucune ad 4 itîon 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 A 10, A,, et A 13 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 C 3, tandis que l'autre borne d'entrée de la porte 126 re- çoit le signal C 1 (La génération des signaux C 1 et C 3 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 252 o 897; 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 Il 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 CAS et MU 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 diune 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 VA 1, VB 1 et VCI est ajouté au compte du compteur 58 Ce signal de trois bits est constant pendant chaque image; en 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*â 4 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 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 CAS sont engendrés par les mémoires ROM 127 et 128 Les signaux RAS 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, $ 3, PRAS 1,2, WY, DHIRES, R/W, A 11, A 13, 14 et A 15. 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 ABK 1, ABK 2 et ABK 3 et également les signaux DHIRES, AY, IND, *A 11, A 13, A 14 et A 15. Les mémoires ROM 127 et 128 sont programmées de manière à vérifier les équations suivantes: ( 1) PCASO = (PRASO, 3 (DHIRES AY + AY (A 15 A-3 À lAi R W +WT 5 A 14 AIS R/WN + A 15 Al A 13 + A 15. A 14 A 13 A 11))) ( 2) PCASA= (DHIRES Y + AY (ABKI * ' lT MM + ABKI 1 ABK 2 * ABK 3) (lT 5 A 14) + AY * IND ' A K ' I 1 ' (A14 ' A 13 + A 14 ' A 13)) ( 3) PCA 53 = PRASO, 3 * (DHIRES * + AY ( 7 'W I À All + A 15 ' A 14 13 *' IT + A 15 ' A 14 '1))) ( 4) PCA 54, = (AY'T' ' ' X ' (ABK 1 *' + ABK 1 i) ABK 2) * (A 14 ' A 13 +A 14 'ÀT) + AY ' IND ' * (y l - ÀKT A 15 + 7 M 2 ABK 1 + ABK 2 ' 1 '1-a') 1 T 4 + AY ' MN ABK 1 ' ABK 2 ' 7 (l-T 5 '* 4 ' A 13 + A 15 * I; '* XT) + AY ' IND ABK 3 ABK 2 '(T ' ABK 1 + A 15 WW') ' (RZ ' 3 + A 14 ' I U)) ( 5) PCA 55, 7, = (AY ' * ' ' (ABK 1 ' AB + K ' ARK) ' (T 5 ' A 14 A 13 +A 15 '*i À 5) + AY ' IND À* (à AÀ * A 15 BK + ABK 2 * +T 11-5) ' A 14 + AY' MM ABK 1 ABK 2 * 3 (l'i - A 14) + AY ' IND ' * O ABK 2 ( i ABK 1 + A 15. W) ' ( 7 'T A 13 + A 14 ' A 13)) 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 A 10, A 13, A 14 et A 15 (en négligeant pour le moment la contribution des signaux MU et des autres signaux apparaissant dans les équations). Les sorties des mémoires ROM CAS 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 O 374) Pendant l'accès à la mémoire, les divers signaux CAS (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 CAS 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 43 a et 43 b de la figure 3. Au cours du fonctionnement normal, le multiplexeur 252 È 897 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, PA 8, PA 15, RFSH (régénération) et JY. 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, " = 7 Y * (DHIRES + RFSH) + (ABK 4 ' (Z Page PA) ) + ABK 1 ABK 2 ' ABK 3) ' AY ( 6) PRASI, 2 = ' (DHIRES + RFSH) + AY ' (AK 1 ' kf - K 3 * (ABK 4 ' (ZPAGE' l) ' P-13) + ABK 1 ' ABK 2 ' ABK 3) + AY ' ' (X Kft ' ABK 2 ' ABK 4 (ZPAGE'PM) P A 15 + ABK 1 ABK 2 (ABK 4 ' (ZPAGE'-ÀA-) ' 5) ( 7) PRA 54, 5 = RFSH ' M + AY'l 7 ' 7 ' (A Bk T ' ABK 4 (ZPAGE ') P A 15 t ABK 1 ' (ABK 4 ' (ZPAGE ' PI) ' p-5) ( 8) PRA 56, 7 = RFSH ' Y + AY ' TE ' (ABK 1 ' MK ' ABK 4 (ZPAGE ' P) ' PA 15 + 1 T ' ABK 2 ' (ABK 4 ' (ZPAGE ' PM) PA 15) ( 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 C. 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 RAS représentés sur les figures 5 et 6. 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 DA 7, A 12 et C La porte NON OU 149 reçoit le signal de page zéro et le signal 415 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 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 O 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, 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 DA 7 soit haut (Cela se produit lorsqu'on adresse comme page zéro la zone d'adres- ses -1800 à 1 FFF) 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 DA 7 soit haut) les bits DAO à DA 3 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 (D Ae à DA 3). 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 2520897 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 128 K peut être subdivisée en deux mémoires 64 K, 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 alphantmé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 M Hz est indiqué par l'abréviation C 3 5 m Le dou- ble et le quadruple de cette fréquence sont indiqués, res- pectivement, par les abréviations C 7 m et C 14 m. 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 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 M Hz pour définir une forme d'onde ayant des composantes à 3,5 M Hz 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 M Hz Le signal résul- tant qui a une composante de 3,5 M Hz est représenté sur le conducteur 206 La relation de phase entre cette com- posante et le signal de référence à 3,5 M Hz 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 M Hz 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 2520897 ' 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 C 7 m et C 3 5 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 apen 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 M Hz 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 ir-nsis- * 252089 ?; 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 M 335 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 riuances 1 '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 M Hz 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 M Hz et dans d'autres modes d'affichage, à une fréquence de 1 M Hz. Les registres 158 et 159 sont couplés avec un bus 2520897; 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 >Sz, soit à une fréquence de 14 M Hz, 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, 252089 ? 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 1; 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 C 7 m ou C 14 m Le multiplexeur 205 de la figure 8 qui, comme 2520897 ' * 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 "noirs" ou "blancs" sont engendrés, en fait dans la réalisation courante deux couleurs constantes sont engendrées sur un -25 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/ M Hz, 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 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 (sept 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 M Hz (à noter que le signal ta est haut, ce qui permet au signal à 7 M Hz provenant de la por- te 175, dé 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 leregistre 170 jusque sur le conducteur 190 Le signal binaire séquentiel du con- ducteur 190 provoque la sélection de l'un des 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 4 ros bi- naires par l'intermédiaire du bus 181 Le signal binaire séquentiel du conducteur 190 produit donc, soit des 'suns" 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,ais (cela utilise la fréquence de cycle de 2 M Hz précédemment men- tionnée) Le registre à décalage 167 décale les données de caractères à partir de la mémoire 162 à une fréquence de 14 M Hz Les données mises en série à la fréquence de 14 M Hz sont décalées à travers le registre 170 et comman- dent, ici encore, le multiplexeur 171, comme décrit pré- cédemment (A noter que le registre 170 est toujours rythmé à la fréquence de 14 M Hz) 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 M Hiz 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- 37 2520897: 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 "IHRES" 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 C 14 m Ce retard se produit à tra- vers le registre 170 de l'entrée 2 à la sortie 2, étant donné que ce registre est rythmé à C 14 m. 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/M Hz. 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- 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 M Hz 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 M Hz, 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 M Hz 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 M Hz. 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 à C 14 m 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- 252089 y secondes; le registre 167 fonctionne sous la commande du signal à C 14 m 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 à C 14 m, un nouveau mot couleur est engendré à une fréquence de 3,5 M Hz sur le bus 180. L'affichage résultant est formé de blocs coloré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/M Hz 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'intermné- 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. Ao TABLEAU I - Celtableau comprend un programme de lecture/écriture disque (pages 40 à 69) un programme de-diagnostic (pages 70 à 82) un programme de moniteur (pages 83 à 111). Bien qu'il s'agisse d'un langage essentielle- ment symbolique, universellement 'utilisé tel quel, certaines parties en semblent traduisibles En pareil cas, la traduction est donnée en annexe, par référence au numéro de ligne dans le tableau (seconde colonne de celui-ci). Par ailleurs, l'ensemble du Tableau I est placé sous: COPYRIGHT APPLE COMPUTER, INC 1979 $APA RWTSI DISK READ/WRITE TRACK/SECTOR (là) 17-APR-81 #000252 PAGE 2 FOOO: FOOO: FOCO- FCDO; FOGO, FOCIO. Folio. FOOO: FOOO: FOOO: POCO: Fc DO: F 000: FOOO: FOGO: FOOO: FOOO: FOOO: FOOO. : F DOO: 0,; 8 0: 0:)EO. F 300. Ciii,31. 0- 22 0 c( 3 C,J:4 O 25 Xe 7 c:1 A 00,IC: OCIS: FD j O. FOOO: FOOO: FOI:-O: FOOO C:)13 rn:c 4- r, D It 1 3 tjz F: :cp O 9000. j 4 * CRITICAL T: * R Ej 2 Vl RES PAGE 16 * CONSIDERATIO; 17 * CODE AND 1 la * CODE- 19 * VIRTUALLY THE O * 1 WRITE, Rot 21 * mus r No T ( 22 * PACÈ BOUND 4 23 * CRITICAL BRA Nt 24 * THE 1 WRITE 1, * AND 'READ AOR 26 * WHICH PIUST Nol 27 * PAGE BOUNDARIE 28 * NOTED IN COMME 29 * 32 EGUAT El 34 NDUFI EGU NOUF 2 EGU 36 * 37 H RDERRS EQU 39 DVMOT EGU 39 * 13 SLOT EOU 41 IBDRVN EGU 42 18 TRK EGU 43 ISSECT EGU 44 IBBUFP EOU IBCMD EOU 46 IDSTAT EGU 47 ISSMOD EGU 48 CSUM EGU 49 IOBPDN EQU IMASK EOU 51 CURTRK EGU 52 DRVOTRK EOU 52;SLOT 4, DRIVE 1 54 i SLOT 4, DRIVE 2 i SLOT 5 DRIVE 1 56 i SLOT 5 DRIVE 2 57;SLOT 6 DRIVE 1 59;SLOT 6, DRIVE 2 59 RETRYCPIT EOU SEEKCNT EGU 61 13 UF EGU 62 ENVTEMP EQU 63 *IBSLOT+SIF NOT L à 4 Ob à x # " lMiric E_ 30 UND * IS FOR )ATA EUTIRE * JT I NE ROSS NR 1 ES. :H?-S IN * RFAD', SUBRS * r CROSS * 9 ARE NTS. $ 200 $ 302 (ZERO PAGE AT $ 300) SEO tel IDSLOT+l IDSLOT+ 2 IDSLOT+ 3 IDSLOT+ 4 LOT+ 6 IDSLOT+ 7 ISSLOT+S lasmoû 1 DSLOT+ 9 IOSLOT+$A IDSLOT+ 90. CURTRK-7 USE O ALSO FOR ADDRESS WEADER CKSUM IDSLOT+$ 12 I 3 SLOT$ 13 1:?SLO'r+&IA t 3 SLO'r+$IE JEED. ru t A ra- c> CC>11 * 4 1: 1 E W % E; D / k,;; 3 ', E' l p J', r,; i - L, C, L; i 1 &) F:Io F:- 10. FID:Do. OD" 5. 0 r:75: GCci 6: 7. F j: FQC 10: F O p 0: F 000: F 050: F Or PO: FOOO: F 000: FOC-0: F Ci 7 àO: F 00,0: FOOO: FOC>O: F Gr O: FO")O: FOOO: FOOO: F 000: F O Z, 0: FOOO: FOIDO: Fooo: FODO: F 000: FOOO: FOOO: FOOO: F 000: *FOOO: : 0-')Iri D: 0011 FE: F 000: F 000: FOOO: FOC)O: FOOO: FODO: 00 i 19: 009 A: FOC)O: COUNT EOU IBSLOT+ 514 LAST Eau IBSLOI+$ 14 CKSUM EOU IBSL Or 4,$ 15 CSSTV EQU IBSLOT+ 116 CHECKSUM& SECTOR, 7 RACK, x 4 **** 6 ú t, s 6 Ci 7 1 7 5 si 0 * * e * 4 * * * 4 * 4 * * * e Q 4 * e 4 4- READADR M 'fé'JST FIND' COUNT. i ODD BIT' NIBLS. CH-: CKSU Ia BYTE. i F Ce JR BYTES, AN'D VOLUME. USES ALL NBUFS AND 32-BYTE DATA TABLE INIBLI se 139 * READ * 91 * USES ALL INBUFS 92 * USES LAST 54 BYTES 93 * OF A CODE PAGE FOR 94 * SIGNIFICANT BYTES * OF DNIDL TABLE. 96 * 101 * SEEK 102 * 104 TRKCNT Eau COUNT PRIOR Eau IBSL O T+$l C 106 TRKN Eau IBSLOT+ SID MSWAIT 113 MONTIMEL EQU CSSTV+ 2 114 MONTIMEH EGU MO -IITIMEL+l * i HALFTRKS MOVED COUNT. r' DTOR-Osi TIME COUNTERS. 1) 1 5 K F E Ara / k J 1 'T E T F A e é / SE -, 7 C-R j 1 c) Rw 7 EI Fojo: F CK)o Fi D'-O: F Cie)ci FG'11-0: F C 0: C 90: F FEF: FFIF: Go Eo: FOC)O: FOOO: Coffl. C 089: COPA: COE(D: Co El. c O q Eo: Q 01 ,7: 001 IP 7: 0098: 0099: 0099: 00 ?A. Oo Ei 3: OO 52: OD&I: : 117 -b lis * 1 1 q -" 1 2 ce * 121 -0 122 * DEVICE ADDREES ASSIC-'t J Pl ENTS 12 4 1 132 PHASEOFF PHASEON 06 L 06 H G 7 L 07 H INIERUPT ENVIRON ONEMEQ TWOMEG EOU EGU ECU EOU E GU ECU Eau EGU EGU EGU STEPPER PHASE OFF. 57 EPPER PHASE ON. 07 LP 06 L=READ j G 7 L, 06 H=S Et 45 E WFRC 67 H, G 6 L=k)R 17 E G 7 HG 6 H=WRITE STOR tcoso tcosi tcoec Ir-08 D *COBE lt COSF t FFEF il-FDF as-,) $ 1 F 134 * * EQUATES FOR RWTS AND BLOCK 136 * MOTOROFF MOTORON DRVOEN DR Vl EN PHASON PHSOFF TEMP csumi SECT TRACK. TRKN 1 VOLUME IDRERR IDDERR IBWPER IENODRV Eau ECU ECU ECU Eau EGU EGU EOU EGU EG-1 J EGU EGU EGU EOU EGU Eou- $Cose tc 089 t COSA ticoa B scosi *C 080 CS TV TE.,IP csuml+l E-ECT+l 1 RACK TRACK+ 1 HRDERRS+ 3 HRDERRS+ 2 HRDERRS+l HRDERRS PUT ADDRESS INFO Hi DISK READ/WRITE TRACK/SECTOR ( 16) SARA RWTSI 17-APR-81 #000252 PAG FOOD, FOGO: FOOO. FQ'ZO: FOOO: FOOO: Fo.:O: F 01 O: AO 01 FCD 2: Ab SI F 004:84 lf 4 FOO&: 013 Fo 1 i 1 Xie FO-DS: 6 A FOD 9: 6 A F.>:>A: 6 A FOOD; 6 A FOCC: 85 'Ba 9 CE:AO OF FF F 011:85 99 F Oj 3: P 012: F 013: j F 013; 2 O 28 FI rolà: QS 1: 1 7: A 5 B 3 019:85 90 f O l 0: A 5 86 FOID:85 9 c OIFA 9 EO O 21 95 9 A f'123: A 5 52 iru 5, C 5 BA f OZ 7:85 BA Or D 9 os e Or-A:6 A F.1 1 D- DD Bc? Co FDZ-E 1 O 01 F 030:ES sa BA Co 4 C F 3 FO:-7: 2 B F O G-FO GA FD:A 213 FODD:;o 07 FO-',D 20 56 94 9 -i O: 38 9:D 41 00 FA F 043: Ci S p D 44 A 5 93 Ab el 03 Fi F:.Lo F(G FD-4 19 F:1 7 C DO 17 FO-E 157 * RE 158 * TRAC 162 RECRWT 8 174 * * NOW CF 176 * 1 cil 1 E 34 le 6 les 19 '3 DRIVSEL t 96 ive 199 DRVWAIT 203 OK 206 *NOW AT 207 on 70 os AD/WRITE A :K AND SECTOR 2 19 4 ****** LDY 01 LOX il. BTY 8. PHR PLA ROR A ROR A ROR A ROR A STA 1 l' LDA Et STA a-? L ISLOT EKCNT, i RETRY COUNT i CET SLOT * FOR THIS OPERATION j O.14 LY ONE RECALIBRATE MER CALI. j DCTERMINE INTERVPT STATU$ i CET INTERUPT FLAC INTO DIT 7 1 ASK JVIRON i VTEMP i PRESERVE-ENVIRONMENT IECK IF THE MOTOR IS ON, THEN START IT JSR CHKORV PHP LVA r LIDUFP SYA Dui- LDA r BOUFP+l STA DU-4-1 LOA ts D,MOT STA MONTIMEH LDA IDDRVN CMP IOLIPDN STA 10 DPON PHP ROR A L 04 M-0 TOR(N x acc DRIVSEL INX LOA DRVOEN'x USR SETIMEG PLP 13 EO CI. PLP LDY #7 VSR MS"Alt DEY 13 N 2 DRVWAIY PHP LOA IDTRK LDX ISSLOT JSR MYSEEK THE DESIRED TRACK. Sr ART WITH> PLP GNE T Rr TRK i SEI ZERO FLAC IF MOTOR STOPPED i SAVE TEST RESIJLTS it'OVE OUT POINTER TG SUFFER INTO ZPAOE i LETERMINE DRIVE O IJE OR TWO ig Ab IE DRIVE USED DEFORE? i SAVE IT FOR NEXT TIME KEEP RESULTS OF COMPARE i CET DRIVE NUMDER INTO CARRY -TURN ON TWE DRIVE DRANCH IF DRIVE 1 SELECTED j SELECT DRIVE 2 e INSURE ONE MIECAHERTZ OPERATION àWAS t T SAME DRIVE? i MUST INDICATE DRIVE OFF DY SETTINC ZERO FLAG) ir-CLAY 150 f IS DEFORE STEPPING i(ON RETURN Aw O) i NOW ZERO FLAC SET i GET DESTINATION TRACK i RESTORE PROPER X Csoà"wo i A'JO 90 TO LT. IJAS THE MOYOR i WAS MOTCR orj? IF 60 DOPI'r DELAY àT IT TC)DAY' Imm Mil 'D"W *e*'DAM Vr E TRACK/SECTOR ( 164 17-APR-81 #0002 M 2 Pffl là t 17-APR-al #000252 PAGE 6 DISK READ/WRITE TRACK/SECTOR (là) Z-4;:A RWTSI F i'1 -; E. Ft;ZE: F:.D: E: AO 1 2 F 4 Df 0: ES F Df,1: DO FD F Cj&,3: E 6 99 F 055:DO F 7 F-Dl,7: Eà 9 A F.31,9:rj O F 3 211 * MOTOR WAS OFF, 'WAIT FOR IT TO SPEED UP. 212 * 213 MOTOF LDY #$ 12 j WAIT 214 CONWAIT DEY 215 BNE COMWAIT 216 INC M Oilf'T 1 MEL i CCUNT 217 DNE MOTOF 219 INC MONTIMEH 219 DNE 1-490 TOF EXACTLY 100 US FOR EACH COUNT IN MONTIME UP Ta 0000 L- ei SARA RWTSI pose: FO 1-D: F:),l B: 9 cl D F-tle- F Ol B: FCID; lro'l O: 20 28 FI FOIE:00 05 FC&O:A 9 80 F 062:4 C ES PO F 065: FOà 5: *F 065: 9065: F 065:^ 5 87 %r O b 7; FO 77 F 069:C 9 03 F 068:80 73 F 06 D:6 A F O AE:8 O 09 FD 70;AD OF FF c-D 2 19 7 F i 7 075:e D OF PF e 078:20 C 6 F " F-D 7 D: AO 7 F Z'ID 7 D 84 93 PO-F à 6 81 F-'-31: 20 BD FI F-I-114 00 21 V: r 6 24 Os gr: 01 EZRA 50 9 '." ( 6 =Z:-D,10 FO F:e F AI e C F:-It 419 F)-'Z 1 6 94 ,); 4 DO 4 F A 9 Ab O Fe-'9 'O 25 Fi F Or DA 9 00 e D-O:2 O 05 Fi F',AO-6 k 3 05 FI 9 J 44 4 C 70 FO 9 'Z'Q C 4 SC FO OE ac Or-: ' F 413 FDLO rle DISK READ/WRITE TRACK/SECTCR ( 14) 17-APR-91 4000252 PAGE 7 222 & 222 * MOTOR Sw WLO DE UP TO SPE Fo. 224 # IF IT STILL LOOKS STOPRED THEN 225 * THE DRIVE 19 NOT PRESENT. 229 JSR C 1414 DRV #19 DRIVE PRESENT? 221 ? SNE TRYTRK i YES CONTINUE 230 NODRIVERR LOA #Im NODRV st 4 OQET TELL EM NO DRIV El 231 imp M &DLERR 232 * 233 * NOIJ CHECK: IF IT 18 NOT THE FORMAT DISK COMMAND. 234 * LOCATE THE CORRECT SECTOR FOR THIS OFERATION. 235 * 236 TRYTRK LOA lacmo id 2 Er COMMAND CODE 237 DEG ALLDONE il F NULL COMMAND, 00 HOME TO DED. 238 cmp #3 1;COMMAND IN RANGE? 239 acs ALL DONE i NO DO NOTHIN Ql 240 ROR A;SET CARRY-1 FOR READ, O FOR WRITE 241 ocs TRYTRX 2 i MUST PRENIBOLIZE FOR WRITE. 242 LDA ENVIRON 243 AND #lt 'Cls'l Eg j'SHIFT TC HICH SPEE Dl 244 STA ENVIRON 245 JSR PRCNID 16 246 TRYTRK 2 LDY #57 F i CJLY 117 RETRIES OF ANY KIND 247 STY RETRYCNT 248 TRYADR LDX 1 '3 SLOT i O >T SLOT NUM INITO X-REG 249 JSR RD-DR% 6;READ NEX 7 ADDRESS FIELD 210 Bac RORIGHT il F READ IT RICHT HURRA Hl 251 TRYAOR 2 B 1 Ir I'llSK i SHOULD INTERUPTS BE ALLOWED? 252 Bril b OINTRI; NO 00-N'T ALLOW THEM. 253 CLI i RE-ENADLEO AFTER READ/READAOR/WRITE FAILURE 254 NOINTRI DEC RETRYCNT i ANOTHER Pl ISTAE Kl 1 255 GFL f RYADR WELL, LET IT GO THIS TIME - 256 LDA curi TRX 257 PHA c'HAVE TRACK WE RE At LY WANT 2,JE) DEC S 1-$r KCP 4 T j Clà Y RECAL ISRATE ONC El 259 814 E DRVERR;TRIED TO RECALIBRATE A SECOND TIME ERWO Rl 260 LOA dit 6 O i RECALIBRATE ALL OVER AGAI Nl 261)SR SEITRK &PRETEND TO BE ON TRACK 80 262 LDA 4600 263 JSR MYSEEK i MOVE TC TRACK 00 264 QOCALI PLA 265 COCAL JSR l"'SEEK i CO Tg CORRECT TRACK THIS TIM El 266 %JMP IRYTRK 2 i LOOP DACK, TRY AGAIN ON THIS TRACK 267 * 268 * HAVE NCW READ AN ADORESS FIELD CORRECTLY 269 & MAKE SURE THIS IS THE TRACA, SECTOR, AND VOLUME DESIRED RDRIGHY LOY TRACK;ON THE RIGHT IRACK> 271 cpy Ctj 4 TPK 27 Z a Eo Rrtn K ilp 50 0000 2273 a RECALIGRATINQ FROII THIS TRACK 274 LDA CV ITRK PRESERVE DESTINATION TRACK 273 PHA 276 TYA lu tn au c> c" 4 > 4 * SAPA P WTSI DISK READ/W 4 RITE TRACK/SECTOR 17-APR-81 * 000252 PAGE O FOD 1:20 25 Fl F 034: 68 FOV 5 20 OS FI Fotri 8: 4 C 86 F O %JSR PLA JSR -JMP SETTRK MYSEEK TRYADR 2 i GO AHEAD AND RECA Ll BR 4 TE 9414 A RWYSI OZSK READ/WRITE TRACK/SECTOR Ié) 17-APR-81 9000252 PACE 9 F:)Z D: Fra Do. A 5 OA ? 5 99 "em; Ae go 1r 584 FOC 3:ro 02 r 3 00 BF FlC 7: A 5 97 FOC 9:4 A FOCA:90 2 D FI.ZC:20 48 FI FOCF:110 D 5 FODI:AD OF FF F Ctp 4: 29 7 F POD 6 'BO MI FF FOE; 9:20 Il F 3 FOVC:DO As FOLE Aà 81 FCEO: la FOEL:A 9 00 FOE 3 90 04 rE 5 69 Fr-rée A 9 82 aises prc-9 e 5 se r el, E a 1 en es Co 24 es 9. :Fo:0 01 F Or 2 58 FO,7-'3 A 5 9 F F Or 3 e D OF FF F,FB 60 9079,20 19 F ' Fo:-C 90 E 2 FOFE A 9 si FI:-O: ZO ú 6 fli ':4 c 86 Fa F 105 Fli S: #1105: fir 15: f I* 5 F 105: FI e 15: OA FI"-35 '49 F 17,9 20 19 FI FII D10 E Fi FI:-E B 5 i 5 9110 95 Sc FIJ 2 A 5 " or 1 1 405 135 rt 16:20 W 94 gli 9 O 03 file es 282 a 28 a te DRIVE 19 ON RICHT TRACK, CHECA VOL 294 le 285 RTTRK LOA VOLUME 296 STA IDSMOD il 287 CORRECTVO; L V^ SECT ic 288 CMP ISSECT 2 EI 9 DEC C C RRECTSECT il 290 BNE TRYAOR 2 291 CORRECTSECT LDA ISCMO 292 LSR A 293 DCC w R Ir 1 ( 294 )%R READI& 29 e OCS TR(ADR 2 ic 296 LOA ENVIRON 297 AND UTWOMEC 298 STA >NVIRON 29 c 7 JSR POSTNID 16 et 300 acs (RYADR 2 j( i LOX IDSLOT if 302 ALLDONE CLC 303 LOA #10 304 acc ALDONEI 305 ORVERR PLA if 306 LDA OIBOERR i 307 HNDLERR SEC el 309 ALOQHEZ STA IGST Ar 309 LOA M Or OROFFX il 310 DIT IMASK amx t-OINTR 2 312 CLI 313 NOINTR 2 LOA spivrepip e 314 STA ENVIRON 315 RTS 316 W Ri T 1 SR t 11 TE 1 6 317 occ AI L 00 ME il ils LDA #IDWPER;I alq avc 1 UtàLERR 3.10 im ' IRYAOR 2 321 * 322 * THIS IS T> 4 E ISE Ev,' MOUTINF J 23 * SEEKS r RACX NI IN SLOT *X/610 324 * IF DRIVNC 19 NEI MTIVE, ON DRIVE O 325 * IF ORI Ve JO IS POSITIVE, ON DRIVE 1 326 te 3227 MYSEEK ASL A :3.213 SEEKI STA 'TRKNI à 329 j SR ALLOFF 3 3 r# JSR CRVINDX 331 LDA rril 'OTRK1. 332 STA CVITRK 333 LDA TRINl 4 334 S T'A DRIJOTRK 't 3 J 5 GOSECK JSR S Etg é( 3:â ALLOFF LDY J 63 317 NYOFF TYA UME MISM Arc H ET ACTUAL VOLUME SERE ELL OPSYS WHAT VOLUME WAS THERE HECK IF THIS 15 THE RIGHT SECTOR t F SC, 00 WHATEVER WANTED e OTRY ANOTHER SúCTOR READ OR WRITE? THE CARRY WILL TELL. :ARRY WAS SET FOR READ OPERATION. LEARED FOR kj RITE ARRY SET UPON RETURN IF SAC READ SET TWO MECAHERTZ MODE )O PARTIAL POSTNIBBLE CONVERSION :HEKSUM ERROR t ESTORE SLOTNUM INTO X N'a ERROR i XIP OVER NEXT BYTE WITH BIT OPCODE ?EMOVE CVRTRK 34 C DRIVE r NOICATE AN ERROR IVE HIM ERROR* r UKN IT OFF- SHOULD SNTERUPTS DE FNABLED? 3 RANCH IF NOT 1 RESTORE ORICINAL EN Vi RD>Jr IE 1 jr 1 ITE NYD 13 LES NOW F lis ERRORS. )ISK IS WRITE PROTECTED'l r AXEN IF TRULY WRITE PROTECT ERROR OTHERWISE ASSUME AN JNTERUPT MESSED THINCS UP %SSUME TWO PHASE -elcrrr-n. e AVE DESTIUATION TRAC(w- 1) lURN ALL PHASE$ OFF TC DE SVRE CET INDEX fa PREVIOUÈ TRACK FOR CVRRENT DRIVE mis is WHERE 1 AM NO WHERE 1 'M r OINQ O THERE' TURN Or F ALL PPASES PEFDRE RETURNINQ (SEND PHASE 111 *CC)j N tn r%) c> Co % O Nd SARA RW Ts 1 FP 11 C:20 4 A F 4 Fi IF: ES F 120: 10 F 9 F 122: 46 BC F 124: 60 DISK READ/WRITE TRACKISECTOR ( 16) 338 JSR CLRPHASE 339 DEY 340 DWL NXOFF 341 LSR CVRTRK 342 RTS 17-APR-81 * 000252 PACE 11 o s CARRY IS CLEAR, PHAS+S SHOLD DE TURNED OFF DIVIDE 13 ACK DOWN -i Sb R ALL OFF NOW IT 51 R if tn r'> c> CD re 9 r 17-i-ck-El zn';_ i 1' 1 l:C-éj 114,11 wi-lil E ;t,) F 2 - F-:, 15 F 1 2 5 1 5 20 2 E F 1 ? 5 E 5 1 A 60 -1 ZE. -IZE: 21) 2 D: " 12 B: 2 D. 2 D: : AO 00 712 rj:ED 8 C CO : 1 Zk O: 20 3 D FI -Il 33: 4 a 134: 68 :DD SC CO l 38: DO 03 ISA: se Il 33 B: DO FO 1-"D: 60 ISE: 1371 E: 48 13 F: SA :4 A 141 4 A 142: 4 A 143:05 82 , AA 146:68 147:60 1.48: il si * 1 * SLJDR TO TELL IF Pl DTOR IS STOPPED * IF MOTOR IS STOPPED, CONTROLLER'S * SHIFT REG WILL NDT DE CHANQINQ. * RETURN Y=O fi ND ZERO FLAG SET IF 1 T 15 STOPPED. CHKDRV LDY #0 CHKDRVI LDA 06 L#X JSR CKI)RTS PHA PLA CMP Ob LX BNE C Kn RTS DEY BNE C H -"t DR VI CKDRTS RTS DRVINDX PHA TXA LSR A LSR A LSR A DRA IDDRVPJ TAX PLA RTS NOTE: FORMATTINQ ROUTINES NOT INCLUDEV FOR SOS -34: 34 5 34 i- ,6 B IHIS SULPOUTINIE El:15 THE: c-LE)l DEPENDE Ni Tti A, yt LOC'A 7 1 CJ. :-7 TTRK JSR Di%VINDX STA DR'OTR Ko X RTS *.**** CET INDEX TO DRIVE NUM BER. IN 117 LOOP COUNTER READ THE SHIFT REG DELAY i MORE DELAY HAS SHIF 1 REG CHANCED? *YES,, MOTOR IS tl&DVING NO DEC RETRY COUNTER ANO TRY 256 TIMES THFN RETURN PRESERVE ACC. CET SLOT(*$ 10)/B FOR DRIVE O OR 1 j INTO X FOR INDEX 70 TADU RESTORE ACC. Fi zc- F 1 -:E, F, 1 4 e: F 1 4 0. F-1 8 - FI -F, F 1 - 6. F 7 1 4 p F 1 46. FI FI ZO: F 1 413. FI;B. F 1 48: F 1 48. F 1 -i B. F 1 48: FI 48: FI 46: FI 8: F 1 Ze: Fi &;B: F 1 -4 8: FI -28: FI 48: F 1 -a B: F 1 4 B: F 1 J'B: Fl-B: F 1 -48: FI 48: F 148: F 1 48: F 1 48: F 1 -B: FI-;B: F 1 -B: Fl-;C: F 148: FI 48: AO 20 FI -;A: 138 F 14 D: FO 6 B F 14 D:BD BC CO F 150:10 FB Fif-2:49 D 5 F 1 54: DO F 4 Flle 6: EA F 157:BD BC CO F 15 A:10 FB F 15 C:C 9 AA F 15 E:DO F 2 Flt O:AO 55 E à' SK rl AD/ W-; 1 ': E IF l-Z 1; /c 'C-, CP ( 1 -,) 1 7 AF R E 1 4: (_ ri C,; 5;_ P A C E * 4- READS ENCODED BYTES INTO N 13 LIFI AND PDUFZI FIRST READS NBU-72 HIGH TO LOW, THEN READS NBUF 1 LOW TO HIGH. O N ENTRY X-REQ: SLOTN Uf-é TIMES $ 10. READ MODE i G 6 L, G 7 L) ON EXIT CARRY SET IF ERROR. IF NO ERROR: A-REQ HOLDS $AA. X-REQ UNCH At o-ED. Y-REG HOLDS lt OO. CARRY CLEAR. CAUTION OBSERVE ND PAGE CROSS' 441 ARNINGS ON SOME DRANCHE Sll ASSUMES 1 USEC CYCLE TIME READ 16 LDY #$ 20 RSYNC DEY DEG RD RR RDI LDA C 6 LX BPL w Dl RSYNC 1 EOR #SD 5 13 NE RSYNC NOP RD 2 LDA 06 L#X EPL RD 2 Ctlip #t AA BWE RSYNC 1 LDY #rr 55 3 ezi 39 c) 3 ? 1 1 197 Z 3 4 l '3, 4 O 41 + 4,* *4b + *t- -4 4- -4 -r- READ SUDROUT) 'E ( 16-SECIOR FORWJ) IMUST FIND' COUNT. IF CANIT FIND MARKS IHEN EXIT WITH CARRY E HEAD i NIBL. ±*-* NO PAGE CROS Sl DATA MARK I? LOOP IF NOT. DELAY BETWEEN &"JIBLS. NO PAGE CROS Sl DATA MARK 2 ? (IF NOT,, IS IT DM Ij i lt%'Il NBUF 2 INDFX. Flt 2, Flô 2:BD BC CO Fib 5: 10 FD Flà 7: C 9 AD Fi t 9: DO E 7 F 1 b D. FI*B:ED ec CO ir 14 ,E: 1 O FS F 170 99 02 03 F 173 AD EF FF F 176:05 1313 F 178:10 40 F 17 A:88 F 1113:10 EE Fl''ID:CS Fl'e E:ED BC CO F 181:10 FD FIE 3:99 00 02 F 186:AD EF FF FIJ,79: 05 S 9 FISD:10 2 D FI 1,D: CO E 4 FIEF:DO EC F 191:CS r:11;,2: n D SC CO Fll 5: 10 FB FI 7:99 00 02 FI rv A: Ce F DO F 5 Flq D:BD SC CO F 1,;O: 1 O FB Flé% 2: 85 96 F 144: EA Fl A 5:BD SC CO F l': 8: 1 O FB Fl AA:C 9 DE FIAC DO OA FIAE:EA F 1 AF: ri D SC CO Fl Lf 2: 10 FU F 1 ": 4: C 9 AA Fi li 6: FO 5 F FI Da 38 f: 1 L,9: O FILA: Flà',"A:4 C 83 F 2 444 * 445 RD 3 44 E 3 450 R 04 4 5 131 456 RD 5 459 RD 5 A 468 RD 6 473 RDCKE Utl 477 RD 7 482 RDS 486 RDERR 48 a 489 GOSERV (ADDED NIBL DELAY) LDA C 6 LX DPL RD 3 CMP #$AD UNE RSYNCI (CARRY SZT IF DI% 131) LDA 06 LX SPL RD 4 STA NRUF 2#Y LDA INIERUPT ORA IMP-15 K SPL COSERV DEY BPL RDI INY LDA 06 L#X DPL Rrj 5 A STA WBUFI, Y LDA INIERUPT ORA IM SK BPL GOSERV CPY #f E 4 B NE RD 5 INY LDA C 6 LX BPL RD 6 STA Pi Du Fli y INY BNE RD 6 LDA 061-,X BPL R DeKSUM STA CKSUM NOP LDA C 6 LX DPL RD 7 CMP #$DE 3 NE RDERR NOP LDA 06 L&X DPL Rrie Cilp #3 AA DEG RIA-XIT SEC RTS *** NO PAGE CROS Sl * JDATA MARK 3 ? j CIF NOT# IS IT DMI?) j* 44 NO PAGE CROS Sl *** i STORE BYTES DIRECTLY i POLL INTERUPT LINE i(THIS MAY DE USED TO INVALIDATE POLL) j INDEX TO NEXT (FIRST TIME Y=O) i GET ENCODED BYTES OF NBUFI POLL INTERUPT LINE (THIS MAY BE US En TO INVALIDATE POLL) WITHIN 1 PIS OF COMPLETION? NO POLL FROM NOW D N. j FINISH OUT NBUF 1 PAGE i GET CHECKSUM BYTE. i EXTRA DELAY BETWEEN BYTES j*** NO PAGE CROS St j FIRST BIT SLIP MARK? i(ERR IF NOT) i DELAY BETWEEN NIBLS. **J NO PAGE CROS Sl *** SECOND DIT SLIP MARK? i(DONE IF IT 15) INDICATE 'ERROR EXIT'. RETURN FROM READI 6 OR RDADR 16- GO SERVICE INTERUPT. N) Ln r%) c> CO O 1 % 2 JMP SEWVICE e 17-APR-91 #000252 PAC DISK READ/WRITE TRACK/SECTOR ( 16) SARA RWT 51 FIZD: FILD: F 12 D: Fl DD: Fl 'D: FIDD: F 1 cul O: FISD: FIDD: F 1 O: F 1 PD: FIZD: Fl DD: Fl'*D: Fi DD: FISD: FIDD: Fl SD: FIDD: Fl BD: FIDD: FIBD: FIDD: F 13 O: Fllj D: Fl ED: FIDD: Fl SD: Fl DD: FISD: Flrj D: F 1 in, O: Fl DD: F 12 D: F 1 ri O, Fle-D: Fl DD: F 1 ZD: FIDD: F 12, O: FIDD: F I'ZD: F 1 Ec D: F 1 3, O: FIDD. F l Z O: F 1 L-,D: FIZO: FllD: F 1 Z'D: Fll:D: FI-m D- Fli D. FIZD: *FIL D-,% O FC F 1;F 594 'r,15 52 E) READ ADDRESS FIELD SUBROUTINE ( 16-SECTOR FORMAT) READS VOLUME, TRACK AND SECTOR ON ENTRY XREG: SLOTNUM TIMES $ 10 READ MODE ( 06 L* 07 L) ON EXIT CARRY SET IF ERROR. IF NO ERROR: A-REG HOLDS $AA. Y-REG HOLDS 115,0. X-REG UN',- HAJ',r;ED. CARRY CLEAR. CSSTV HOLDS Cé-lS Ufli SECTOR, TRA CK, AND VOLUME READ. USES TEMPS CCUNT, LAS Ti CSUM, AND 4 BYTES AT CSSTV. EXPECTS ORIGINAL 10-SECTOR NORMAL DENSITY NIBLS ( 4-DIT), ODD BITS, THEN EVEN. CAUTION OBSERVE NO PAGE CRO Ie JS' WARNINQS DU SOME BRANCHE Sll ASSUMES 1 USEC CYCLE TIME RDADR 16 LDY;;t FC STY ccu NT 'JST Fli D' COUNT 17-APR-91 #000232 PAGE '15 à LOW ORDER OF COUNT. JCZK NIOLS TC FIND i ADR MARK, ELSE ERR) READ NIDL. j*** NO PAGE CROS Sl AVR MARK VP j(LOOP IF NOT) JADDED NIBL DELAY. * 416 NO PAGE CROS Sl i ADR MARK 2 ? i (IF NOT, 15 IT AMI?) i INUEX FOR 4-BYTE READ. i*** NO PAGE CROS Sl &ADR MARK 3 ? i (IF NOT, 15 IT AMI?) SINIT CHECKSUM. READ '000 BIT' N 18 L i**,O NO PAGE CROS Sl &ALIGN ODD BITS, 'I' INTC LSD. i (SAVE THEM) i READ 'EVEN DIT' NIOL. **,r NO PAGE CROS Se *** M'RCE ODD AND EVEN DITS. i STORE DATA DYTE, -LOOP ON 4 DATA BYTES il F FINAL CHECKSUM i NC 14 ZERO, THEN ERROR. i FIRST DIT-SLIP NIOL. NO PAGE CROS Sl i ERROR IF NOMMATCH DELAY (NO INTERUPTS FROM NOW ON) SECOND DIT-SLIP NIBL. 1 * 00 NO PAGE CROS Sl i ERROR IF NONMATCH. i CLEAR CARRY Cr 4 1 NORMAL READ E(ITS. SAPA RWTSI DISX READ/WRITE TRACK/SEVOR ( 16) Fl CI: Ce FIC 2: DO 04 FIC 4: E 6 95 FI C 6: FO FO FICB:BD BC Co FICII: 10 pu Flco:cq V 5 Ir 1 CF: DO FO Pr IDI: úA F Ir2:50 SC CO Ftc 5 lo Fa FIC 7: C 9 AA FIC-9:00 F 2 FIE B AO 03 FIDO: FIC-DAD SC CO FIúO -IO Fa FIú 2:C 9 96 FI E:4: 00 F-7 FIE 6: F 126:A 9 00 FIES: $ 35 89 Fl EAAD SC CO Flei):10 FD FI F ZA 9190 45 95 :Iez:DD SC CO 91 = 5 10 Fu F 197 25 95 Fl F-4 ? 9 97 00 9 i Fc 43 89 F Ir E e S Fi FF 10 ú 7 Ferd AS F 2 ':2 CO 04 c 2 c 4 SD ec Co 9207 10 FB -21,9:C 9 DE 9 Z,O L-0 AD F;CD 78 FZ'E:DD SC CO F 211:10 FO 921 3:c 9 AA r 2 15 00 AI F.-7 IS F 2 là 3 ' 60 92,19; 547 RDABYN 551 ROAI 553 RDASNI 356 ROA 2 562 RDA 3 568 RDAFLD 569 ROA 4 573 ROA 5 fil 582 RDA 6 84 597 RDA 7 E 38 C 91 RDEXIT 592 WEXlT 31 ? 3 INY ONE ROAS 1 PIC COUNT DEG RLCRR LDA 06 LX DPL Kr Al CMP #SD 5 opir ROASYN NOP LDA 06 LX RPL RDA 2 CMP #$A^ UNE R Df St 4 l LOY 4 * 3 (ADDED NIBL DELAY) LDA 06 L X OPL RDA 3 cmp #996 9 NE RD S Nl (LEAVES CARRY SE Tl) LDA 4;SO STA Csum LDA 06 LX UPL RVA 4 ROL A STA IAST LDA C 6 LX DPL rk LIA 5 AND LAST ST^ cssi'v y EOR csum DEY BPL R DeFLD TAY 8 NE RDE:RR LDA Ob LX OPL R Dn 6 CMP #$DE ONE Rri-'RR SEZ LDA C 6 LX OPL RVA 7 CMP #SAA ONE RDERR CLC RTS CHN RWI 52 tu Un r%)- c> oe 1 % O - -Ni DISK k EAD/W-w ITE IRACK/SCCTCR ( 161 17-APR91 #000252 PAGE 16 F; F.119 F 2 ? 9 F 219: PZl 9 F 21 9 F 22 9. F.-: 9 F 219 F.', 9 r Z, 9 F.1 q F 219 FZ 1 9 ' F.1 1 C F 19 F 2. FZ 1 9 F 21 : FZ: 9 F 219: FZI FZ,, 9 F.'l 9 F 2.'9. F.119: F 219. F., 1 9: F 219: F 21 Q DS F 2 l A: 58 F 21 C BD BD CO F 2 ',E:ID SE CO F 5 FZ;: A 9 FF FZ:5: n D BF CCJ F 2 ZE ID EC CO F.'ZEAO 04 :Z,D EA FZZE: 4 E 3 F;:ZF 69 FZ'-* ZB F,. i 68 F 20 E;D F 2 F 2 l-Z 5 FS F; _-b: DO FS F 2-16 A 9 05 ***" 1 : Cie zi a 1 1 1 2 1 3 1 4 1 5 1 6 1 7 (J D: ZC? q 4 e 4 ry % WPITE SUDR a >-SECTOR FORMAT) * WRITES DATA FRC -J NBUFI AND NBUF 2 FIRST li DUF 2. HIGH TC LOW. THEN NDUF 1. LCW TO HIGH. ON FNTRY X-REG: SLOTNUM TIMES t Io. 0:1 EXIT CAPRY SET IF ERROR (W PROT VIOLATION) IF NO ERROR: A-REG UNCERTAIN * X-REG UNCHANOEU 4 Y-REG HOLDS tri D * CARRY CLEAR. ASSUMES 1 USEC CYCLE -l IM 7 _ WRITE 16 SEC CLV LDA G 64,X LDA 07 LX 13 MI VE)IT WRTI LDA 4 &FF STA G 7 H x ORA G b L x LDY 494 Nop PHA PLA WSYNC PHA PLA )SR ' 4,41 BL 7 DEY B NE t Isy 14 C LDA #ID 5 A 14 TICIPATE k 1 PROT ERR. i TO INDICATE VIRITE PROTECT ERROR INSTEAD OF INTERUPT i SENSE WPROT FLAC. DRANCH IF NOT WRITE PROTECTED SYNC DATA. i( 5) COTO WRITE MODE i( 4) ( 2) FOR FIVE tl I 9 _l S ( 4) EXACT TIMINW ( 3) EXACT TIMINQ. ( 13,9 6) WR 17 E SYNC: ( 2) 1 *( 2-*) MUST NOT CRO" AG El ( 2) IST DATA MANX N) LA h c> oe % O DISK READ/WRITE TRACK/SECTOR (là) 17-APR-81 0000252 PAGE 17 j( 2) 2 NO DATA MARK. i ( 15 9 6) ( 2) 3RD DATA MARK. ( 2) NOUF 2 INCEX j( 2) FOR TIMINO J( 2) J( 2) j( 3) BRANCH ALWAYS ( 4) POLL INTERUPT LINE J( 3) j( 2) i( 2) BRANCH f FINTERUPT 14 AS OCCURED j( 3) FOR TIMING. 1 ( 4) 43) STORE ENCOCED BYTE. i( 4) TIME MUSY 32 US PER BYT El j( 2) j( 3) ( 2 IF ORANCH NOT TAKEN) i( 2) INSVRE NO INTERUPT THIS BYTE. j( 3) BRANCH ALWAYS. j( 4) POLL INTERUPT LINE i 3) i( 2) j( 3) BRANICH IF NO INTERURT j CO SERV Ie* i N-r E Rup-r. j( 2) J( 4) ic 5) STORPE ENCODED BYTE. ( 4) ( 2) WITHIN 1 MS OF COMPLETION- k( 3) ( 2) NO KEEP WRI Tr INQ AND POLLINC. j( 2) 1 ( 2) à( 2) é( 2) j( 4) 1 ( 3) j( 4) WRITE LAST 09 ENCODED BYTES j( 5) WITHOUT POLLINQ INTERUPTS. j( 4) j( 3) NORMALLY FOR TIMING 1 ( 2) s( 3) ( 2) ( 3) ORA Ne H ALWAYS ïCI 3 9,6) CO WRITE CHECX SU Wl j( 2) DM 4, DIT SLIP MARK. & ( 13, 9, 6) WRITE IT. 1 ( 2) OM 3, BIT SLIP MARK, à WRITE IT. 1 ( 2) DM 6 BIT SLIP MARK. à ( 15 9 6) WRITE IT b( 2) TURN-OFF BYTE. i WRITE LT. r Ur OF W Rt TE MODE. F 22 A:20 BC F 2 A 9 ^A 922 F:20 BC F 2 F 2.12: A 9 AD F'.44:20 BC F 2 92-17: AD 35 9249: EA F 24 A EA F 2-18: úA F.' C: 00 00 924 E:AD EF FF F 21, 1 05 au F 213:EA F 214:10 F 216:120 00 9218:D 9 02 02 prz,l D: 9 D 130 CO F 21 E:DD BC CO F 261:89 F 2 e,2:10 EA F 2 t 4:99 F 2 & 5:30 03 ir 2 t,7 AD EF FF 92 àAO 5 se F 2 A' ' EA F 2,D-CO 02 42 ce r 272 29 rio 02 1 r-75 1;D P D CO r-z-S r D Sc CO c- 9:r O E 4 ez'D CO ce 92-9 EA rze-0 ce TZII-1 EA FZ 92: EA F.11-3;a FIZ 54 6 e F 2 r Z 5 89 00 02 Fze A: 9 D 13 D CO 92130:00 BC CO F;.QO: Ce F 2111 DO EE 9 zeli ro 00 w 2-y 5 zo BD P 2 FZ -tg l A 9 DE F Zm A 20 SC F 2 F.2 CO, A 9 AA FZQF 20 BC F 2 F 242 A 9 Es 9244 20 OC F 2 CIZIA 7 A 9 pp e 249 zo Bc F 2 go-AC BD e E CO 68 WINTRPT 72 VRYFR Sr 73 WRTFRST WNTRRY 1 91 WMIDLE sa ab WDATA 2 E 36 E 38 j 3 c? 93 WDATA 3 toi 104 WRCKSUM lit Ili NOW Rrr E JSR LDA JSR LDA JSR LOY NOP NOP NOP 9-NIE LDA OR^ NOP 8 PL emr LDA STA LDA DEY BPL TYA Bill LDA ORA NOP BMI 3 PL INY LDA STA LOA CPY BNE NOP INY Nop NOP PHA PLA LOA STA LVA LVA INY ONE 3 EO JSR LDA JSR LDA JSR LDA isp LOA JSP LDA W; 11 OL 9 *SAA WJ 1 BL 9 * 11- D le 4 ca Lv #853 VRYFRST 1 N i FRVP T IMASK S Ew VICE 9-',ITFRST el DUF 2 Y c 6 m x c 6 L'x WINTRPT WMIDLE I Ni ERUPT IM-ASK WCATA 2 SEKVICE NPligil Y Oé 4 H'X 66 L-X *IE 4 UNIRPTI USUFIY Qbmx C 6 LX CKSUM JD Ar A 3 PRCKSUM I.Nt OLI #$DE 1-'t Jt BL 9 #t AA U-'4 ZOL 9 *s Es UNIOLV *IFF WNIBL 9 07 L x r 4 là Ln ru CO % O 11-2 17-APR-Bl #000252 PAGE 118 READ MODE. RETURN FRO M WRITE. TREAT INTERUPTION AS RROR i SET VFLAC 70 INDICATE INTERUPT TAKE IT OUT OF WRITE MOD El COULD NOT HAVE GOT HERE WITHOUT CLI GA DISA READ/WRITE TRACK/SECTOR ( 16) 1 1; il 5 116 * 117 SERVI( lis 1-' 2 *****i 123 * 124 * 7- * 12,15 * A- 127 * 128 * 12-7 *****ï Wt-,i' I O LI 131 WN I BL 133 WN 1 EL 136 * LDA RTS c 6 i 1 x r-:',;- F: BD BC CO :Z'Z 2: -,,O F 21:3: c c" 11 3 -:4 8 -:Z_'4 2 C 54 F 3 AC F 2 =Z; A Els F Z:, C. F-:,Zc: F C: F C p C Zc: F C 1 a D: L E F-r-'7 F:9 D EID CO 2: D E C C O F 2E SEC 13 IT sr v JSR NOWRITE CLI RTS f x K ** K ***** x *** -DIT NIBL WRIIE SUIJRS * -REG OR'D PRIOD' EX 17 CARRY CLEARED ? CLC 7 PHA ( 2) i ( 3) ( 4) ( 5) ( 4) 9 CYCLES, THEN WRITE. 7 CYCLES, THEN WRITE. NIBL WRITE SUB. CLOBBERS ACC, NOT CAPRY. PLA STA ORA RTS 06.4# x G&Li X Ci" - __j r%) Ln r%) c> CO 1 %G 1 11.4 17-APR-81 #000232 PAGE 19 DISK READ/WRIYE TRACK/SECTOR ( 16) PREMIDLIZE SVDR J 41 14-1 * CONVERTS 256 BYTES OF * 146 O USER DATA IN (OUF) INTO * 147 * ENCODED BYTES TC BE 1413 * WRITEN DIRECTLY TO DISK * 149 * ENCODED CHECK S Vl IN * ZERO PAGE ICKSUMI. 151 * 152 * ON ENTRY 154 OUF IS 2-DYTE POINTER 153 TO 256 BYTES OF USER 156 DATA. 158 ON EXIT * A-REO CHECK SUM. 161 * X-REO UNCERTAIN 162 * Y-REQ HOLDS 0. 163 * CARRY SET. 164 * 166 PREN 1816 LOX 412 167 LDY #0 168 PRENIDI DEY 169 LDA c 0111 F)y LSR A 171 ROL MOUF 2-1, X 172 LSR A 173 ROL 14 IVF 21 X 174 STA Nq UFI*I Y 173 INX 176 CPX 4856 177 OCC PRENIDI 178 LDX f O 179 TYA UNE PRENISI 181 LDY #956 182 PREN 183 EOR ri DUFZ-2 Y IB 3 PREN 182 AND #83 F 184 TAX LDA NIDL, X 186 STA ej OUF 2-1,Y 187 LOA PJ 13 UF 2-2 Y les DEY 181 P ONE PREP 11133 AND #13 F 191 PREN 184 EOR WOUF 14-1 y 19.3 LDA N 13 L Y P.1 cé: 92 cà: lez( 6. F 2 c 6: p 2 l". F 2 c 6: F 2 c 6: p 2 cé: F 2 c 6: pzcâ. F 2 c 6: F 2 c 6: F 2 C 6 F 2 C 6. F 2 c 6: F 2 C 6: F 2 C 6: F 2 c 6: F 2 C 6: F 2 c 6. F 2 C 6: 92 C 6, P 2 C 6: F 2 C 6: F 2 C 6 F 24 6: F 21 c 6 F 2 r 6: e 2 6: ^ 2 02 AO 00 F.'CA 88 p 2 tu Di 9 B orz, O 4 A FZ'E 2 E 01 03 F.'D 1 4 A F 2 rj 2:lE 01 03 FZC-5; 99 01 02 FZC-S;ES F 2 ID 9:EO 56 92 DO:90 ED 92 DO A 2 00 F 2 DF:99 F 2 EO:DO ES F 2 E 2, AO 56 FZE 4:59 00 03 F.ME 7 29 Zr *F.E 9:AA FZEA: DO 55 F 3 F 2 ZD 99 01 03 Ft'FO:89 00 03 92 F 3 98 F.194 IYO EE 92 F 6 29 3 F F Zr S 19 01 02 F 29 'B AA FTFC 30 55 P 3 i START NBUF 2 INDEX &START USER OUF INDEX. J NEXT USER BYTE, SHIFT TWO DITS OF àCIJRR Et IT USER BYTE i INTO CURRENT NOUF 2 i BYIE. #( 6 OITS LEFT). i FROM O TO % 35. à OR IF NO WRAPAROUND. i RESET NOUF 2 INDEX. USER OUF INDEX. (DONE IF ZERO) CACC-0 FOR CHECK SUM) i COMBINE kli TH PREVIOUS j STRIP CARDAGE BITS, j TO FORM RU NNINQ CHECK sum i GET ENCODED EGUIV, &REPLACE PREVIOVS RESTORE ACTV^L PREVIOVS b LOOP UNYIL ALL OF NOUX 2 15 CONVERTED s KIOW 00 THE SAME FOR i Nt LIBLE BVFFER 1 i TU 00 ^Ny OACK TRACMINQ CND Ufrt-1). r%) t A M) - c> Co 1 %O 1 " 4 à DISK READ/WRITE TRACK/SECTOR (là) 17-APR-81 #000252 PAGE 20 Z:F: I eO C-2 F -1: 2: 9 C 1 02 rr _-%f 1(Li -": t r-O Fi) F E PA LD f, 5 F 3 Fz 'C-P-5 9 b i: -4 C4 CF 3 i 9 -, 19 c 19 " O Sr A LDA 1 INY PINE TAX LDA STA imp NMUFI # y " 43 UF 1-ls y PRENI 54 MIDL, X CKSUI 1 ESTIMEC RECOVER THAT WHICH IS NOW 'PREVIOUSI. USE LAST AS CHECK SUM. AL L DONE. (i c'a Lm r O Co 1 %O 1 -à eúZ^ KLMU/WRITE TRA Ci/SECTOR (là) 17-APR-81 #000252 PAGE 21 D 1 J 1 A 9éO Z' E O 1 O 3 ' 3 eo DO OF 3 -::,B 990203 9-3 ' ' E: 8 8 F" 'l F: i O F 4 F 'Z'1: ': 8 F 4-22: 47 E 00 02 F-2425: 5 D00F 3 F 7 j-8:990002- DO F 4 :5 D 00 F 3 Z' a lw, O lâ A 2 6 C A rz O Fe DO 02 .E C) 3 ZA 2 ' ,E C)r'_' 03 1-0 ED C D DF Ft: Ce O 1 c:Cr FFg Z 203 ********* 204 * 205 * POST 206 * 16-Si 207 * a 210 POSTNIB 16 "lit 212 PNIBLI 21 D 218 Pf-ZIEL 2 22 CI D 22-; 2 a"'Ic 227 POSTI 225 POST 2 2 1;-) 23-i 3 Ec -'239 POSTERR 240 SETIMEG 21 -; 1 24 z SEV NIBLIZE SU 2 R ECTOR FORMAT é, FIRS-r CONVER-r -ro 6 BIT NIBBLES INIT CHECK Suti. o Er ENCODED BYTE. REPLACE WIYH 6 DIT EQUIV. LOOP UNITIL DONE WITH NIBBLE BUFFER 2 NOW Y=O DO THE SAME WITH NIDDLE DUFFER 1 DO ALL 256 BYTES M AKE SURE CHECK '57 U Mi MATCHES EETTER BE ZER Ol ANTICIPATE ERROR i BRANCH IF IT 15. 1-'ll IT re UF 2 INDEX. N#3 UF IDX $ 55 TC $ 0. t 4 RAPAROUND IF NIEG. EHIFT 2 DITS FROM CURRENT NBUF 2 h '&'BL INTC CURRENT î% 4:UF 1 NIEL i BYIE OF USER DATA. NEXT USER BYTE. i -GOOD DATA. SET TO ONE Pl EGAHERTZ CLOCK RATE (SEV USED Tb SET VFLAG) LDY LDA LDX EOR STA DEY L'R L I Ny LDX EOR STA I bile BNE LDX EOR SEC UNE LDX DEX ami LDA LSR ROL LSR ROL STA INY BNE CLC ECIU LDA DRA STA RTS 14 * 55 #io t%'r UF 2, Y L'-" 1 I 13 L, X pi DUF 21 Y PNIBL 1 NRUF 1 î Y C-94 JI DL, X r.,13 UF 1 1 y FINIBL 2 CKSLIM DNIBL, X POSTERR #l 5 6 POSTI NBUF 1 1 y P-13 UF 2, X A PJDUFZ, X A (BUF)IY POSTIM. Rot, Ql, ru Ln r%) c> CD % O ** 4 -bi 2520897 F 7 Etl SKREAD/,JF Il L -7 F L 1 41 C-1 Ci 215 2P A QE F 24 t x 4 FZ 24 b F 3 t 214 7 * 6-DIT 70 7- DIT F 3 15 248 * NIBL CONVERSION TABLE F 5 249 * F c: 250 F Z 455 251 * F 3 -55 252 * CODES WITH MORE THAN F 5 r 2 l 5 3 +ONE PAIR OF AD Jr ICENT F'7 ": 254 ZEROES OR ','ITH NO F 3 5: 255 ADJACENT OPJES (EXCEPT F'255: 256 37) ARE EXCLUL)ED. F Z-i f5: 257 F 3 -1 5: 258 x F 3 t 5 96 97 9 A 259 NIBL DFD $ 96,$ 97,$ 9 A F -": ' S: 9 B 9 D 9 E 260 DFE li 9 Ei $ 9 M V E F::t 5 D: 9 F A 6 A 7 261 DFD $ 9 F,$A 6,t A 7 F'3 : E: AB AC AD 262 DFE $AP#$AC,$AD F 351:AE AF B 2 263 DFB f Atr, $AF, $D 2 F 4: E 3 B 4 B 5 264 DFB SB 3,$B 4,$B 5 FZ-c -&% 7: B 6 B 7 B 9 265 DFB $-L 6,$B 7,SD 9 F 3 6 A: EA EB BC 266 DFE t BAISEBISBC F 2 b D: 1:11) DE BF 267 DFB $BD,$BE,$DF F 3 't O:CB CD CE 261 B DFE SCB,lt CDSCE F 3 '73: CF D 3 D 6 269 DFB $'F, $D 3, $D 6 F-376: D 7 D 9 DA 270 DFE t D 7, lt D 9, i DA F 37 9: B DC DD 271 DFB $DBP$Dce$DD Fî,7 C:DE DF E 5 272 DFB t D=-'# 4 DF, $E 5 F 37 F:E 6 E 7 E 9 273 DFB 4 E 6,$E 7 î$E 9 F 3 '-72:EA ED EC 274 DFB SEA,$EB,lt Eu F:-c B 5: ED EE EF 275 DFB *ED, $EE,$FF F 3 FB:F 2 F 3 F 4 276 DFB SF 2,$F 3,$F 4 F 3 EîD:F 5 F 6 F 7 277 DFI 3 SF 5,$F 6,$F 7 FSSE:F 9 FA FB 278 DFB $F 9,$FA#$FB F 3 M:FC FD FE 279 DFB 't F Cs$FI)p$FE F 3174: FF 280 DFE t FF RI.J 752 DISK READ/WRITE TRACK/SECTOR ( 16) 17-APR-81 #000252 PAGE > 2 F 3 ? 5: F 395: F 395: F 3175: F 395. F 3? 5: F 395: F 395: F 395: F 395: P 395: F 395. -7 j 95. 9 '395. 395: e 395: 00 ' 3% 0: 7396: 00 e 399: 99 :'39 C: 9 C :'3 '-F: 06 73.t 2 A 2 -3 A 5: A 5 -3 A B: AB -3 AB: 09 -31 AE: OC -31,1 J 31 -3 '-74: 10 -3 D 7: 13 -33 A: 15 -3 Tj D: 18 -3 CO: r-O -3; 3: C 3 :'3 C 6: C 6 -3 C 9: C 9 -3 CC: CC :3F: 1 E 3 ID 2: ri 2 -3 r)5: D 5 -3 C-B: 013 -3 DD: 24 -3 l-E 217 :3 E 1: El 73 E 4: E 4 73 E 7: 28 -3 EA: 2 D -3::D: FO -3 F 3: 34 "-'JF 6: 37 r:9: 39 -.rc: -C -FF 3 F * 1 302, 3 3 2 ' 7-DIT TO 6-DIT DENIBLIZE' TARL ( 16-SECTOR FORMAT) VALID CODES $ 96 TO $FF ONL Y. -4 CODES WITH MOIRE THAN * ONE PAIR OF ADJACENT * ZERCES OR WITH N O ADJACENT CNES (EXCEPT DIT 7) ARE EXCLUDED. DRK DNIBL EQUI REGRWTS+$ ' DFB DFB t 9 '-7, $ 02, $( DFB $ 9 Ci $ 04 e X DFB 14 06, $AO, $e DFB $A 2, $A 3, DFD e A 51 $ 07 J DFB $A 8, $A 9, $ 4 DFB e O 9,$O Aj$( DFE DFD $Bl,$OEIS( DFB lt 10, $ 11, $ 1 DFD $ 13, $Balfal DFO 1415, $ 16 $ 1 DFB $ 181 $ 191 $ 1 DFE lico#$Cll$( DFB e C 3,$C 4 e$C DFB $C 6,$C 7,$C DFB t-C 9,$CA,$l DFB ltccg $IC Ilil DFD $l E*$D Oj $E DFB l?D 2 i $IF, $L DFB t D 5,$ 20 à li 2 DFO lt DS#$ 22,$ 2 DFD f-2-4, $ 25, $ 2 _ DFB $ 27 s$ 28,$E DFO 1 EE 1, $E 2, ZE DFO t E 4,$ 29,lt 2 DFD $ 2111, li ES, 32 DF 8 $ 2-E, $ 2 DFB i$ 301 ii 3 il $: DFB 2 FO, $FI, i Z: DFB '$ 34, $ 35, td DFB $ 37, $ 38 le F DFB $ 39, $ 3 A, fil; DFB 23 Z#$ 3 Di 14 Z' DFD CIME BYET LEFT OVER 300 is )3 )5 %i % 4 la A )B Il- 4 Y A 1 'a D D 1 l 1 e 6 :O t A C F t 2 -3 ID IE AO A 3 A 9 OA OD OE il Be ci C 4 C 7 CA ic DO 1 F E 2 Es 2 E F 1 3 5 -m.'B :?A -3 D AI A 4 AA OB BO OF IA C 2 C 5 ce ID Dl EO E 3 2 A 2 C 22 F F 8 3 E 252089 ? 17-AF'R-31 #000252 PAGE 4 DISK READ/WRITE TRACK/SECTOR ( 16) 400: 400: -i Co: 400: 400: _l 00: 400: 4 clo: 4 r:o: 400: 4 ( 30 -. -i _ 0: -400: -400: :'-lq 7 j O: 74 Ỏ: 740 (: :400: -400: -400: :400: -41,JO: -400: -400: :,; O O: :'40 0. :,4 r;o: 00: :4 C 0: 74 C-0: *:'4 i' 0: Z-400: :400: = 400, ri: = 4 co: = 4:', O: :'4 C' 0: P, 59 E r 41 2: C 5 SC :-4 C 4: FO 42 = 406: A 9 00 = 4 f-; 8: 85 95 -4 n A:A 5 BC '4-'_l C: 85 9 D '4 r DE: 013 74.'%F:E 5 9 E Z 4 't 1: FO 331 *****;l * FAE * X-R * A-H SEEK SEEK 2 33 B M SEEK SUBROUI INE -* -4 ON ENTRY EQ HOLDS SLO Ttl'Utl TIMES $ 10. EG HQLDS DE Sl RED HALFTRACK. (SINGLE PMASE) CURTRK HOLDS CURRENT HALFTRACK. ON EX I T * A-REG UNCERTAIN. * Y-REG UNCERTAIN. * X-REQ UNDISTUREED. CURTRK AND TRKN HOLD FINAL HALFTRACK. PRIOR HOLDS PRIOR HALFTRACK IF SEEK WAS REQUIRED. MONTIMEL AND MO Nr IMEH ARE INCREMENTED DY THE NUMBER OF USEC QUANIUMS REQUIRED DY SEEK FOR MOTOR ON TIME OVERLAP. VARIABLES US En CU Rr RK, TR 9 N, CCUNT. PRIOR, SLOTTEM-z" MONTIMEL, M Ot 4 lr IMEH SAVE TARGET TRACK ' DESIRED TRACK-:' YES, ENERG I ZE PHASE AND RE HALFTRACK COUNT. SAVE CURTRK FOR I)CLAYED TURNOFF. i DELTA-TRACK'B. i BR IF CURTRK=DESTINATION STA c t IP BEG LDA STA LDA STA SEC sac BEG TRKN cuel'RI 4. SEIPHASE 4 to 1 RUCNT CUIRTRK PRIOR TRV N SEEKEND DISK READ/WRITE TRACK/SECTOR (là) 17-AFR-81 #00025 ? PAGE 25 Rk JT 52 F 433: DO 06 F 4 i 5: 49 FF F 417: E 6 BC F 419: 90 04 f Z 4 10:69 FE F 41 D: C 6 BC F.;IF: C 5 95 F 421:90 02 F 423:A 5 95 F 4 1215: C 909 F 427:DO 02 F 429:AS F 42 A: 38 F 42 D:20 4 E 3 F 4 F 42 E B 9 67 F 4 F 4-'il:20 56 F 4 A 5 9 D la 4 Z 7: 2-1 04 A F 4 F 42 A:D 9 70 F 4 F,4 ' D: PO 56 F 4 F 4-O: E 6 95 F 4-42:DO C 6 F.;; 4 210 56 F 4 F 447:IS F.; 48, P'" 5 BC F 44 A:29 03 F 44 C:2 A F 44 D:05 81 F 4 AF:AA F-;l,O: BD' 90 CO F.;r- 3: A 6 81 F 455,60 397 OUT J 99 MINTST 402 MAXTST 404 STEP 406 STER 2 -; 1 4 416 SEEKEND 418 SETPHASE 411: CLRPHASE 4 è 13 425 SEEXRTS 13 cs EOR 1 Nc 13 cc ADC DEC Clip BCC LDA Clip Bc$ TAY SEC JSR LDA %)SR LDA CLC JSR LDA u SR 1 INC BNE %JSR CLC LDA AND ROL ORA TAX LDA LDX RTS C'LIT #$FF CU,'TRK Pl I NTST #$FE C V on% T R K TRKCNT m Ax Ts r 1 RKCNT #59 STEP 2 SETPHASE CNTABLEY MSI-,'A 1 T PRIOR CLRPHASE OFFTABLEY Mc-WAIT TRKCNT Si FEK 2 Mt'wc;A 1 T IDSLOT IDSLOT (MOVE OUT& NOT IN) CALC TRKS TO GO. INCR CURRENT TRACK (IN). (ALWAYS TAKEN) CALC TRKS TC GO. i DECR-CURRENT TRACK (O)T). AND 'TRKS MOVED. jl F TRKCNT>$S LEAVE Y ALONE (Y-$B). i ELSE SET ACCELERATION INDEX IN Y j FOR 'ONTIME 1. ( 100 USEC INTERVALS) j FOR PHASEOFF i TURN OFF PRIOR PHASE 7 HEN WAIT 'OFFTIME'. l O O USEC INTERVALS) IRACKS MOVED' COUNT. (ALWAYS TAKEN) SETTLE 25 PISEC SET FOR PHASE OFF QET CURRENT TRACK j MASK FOR 1 OF 4 PHASES DOUBLE FOR PHASEON/OFF INDCX, TURN ON/OFF ONE PHASE RESTORE X-REG AND RETURN Ni tn r* c>, %Q:, - DISK READ/WRITE TRACK/SECTOR ( 16) 67 %, ci 1 52 17-APR-81 #000252 PAGE 2 i 1 - 2, 2,1 8, 9 7- F 456: F 456: F -4 5 6: F 4 f, 6: F 456- F 456: F 6. F 456: F-456: F 456: F 456: F 456: F 4 16: F 456: F 456: F 456: F -15 6,. F-456: F 456: F 456: F 4 -:6: F 456. F 456, F 456: F 456: F 456: F 456- F 456- F 456: F 456: F 456: F 456: F 456: F 456: F 456:,A 2 1 1 F 458: CA F 459:DO FD F 45 D:E 6 99 F 4 f D:DO 02 F 45 F:E 6 9 A F-461:338 F 462:E 9 01 F 464:D O FO F 466:60 F 4,1,7: * 1 DELAYS A SPECIFIED NUMBER OF 100 USEC INTERVALS FOR MOTOR ON TIMING. ON ENTRY A-REG: HOLDS NUMNER OF 100 USEC INTERVALS TO DELAY. EXIT * A-REG: HOLDS $ 00. * X-REQ: HOLDS $ 00. * Y-REG: UNCHANGED. * CARRY: SET. MONTIMEL, MONTI Piffl ARE INCREMENTED ONCE PER 100 USEC 1111 ERVAL* FOR MOTON ON TIMING. ASSUMES 1 USEC CYCLE TIME MSWAIT LDX #$il mswi DEX BNE èI 5141 1 NC M -ONTIMEL BME Mi 5 W'2 INC M O JT Ir-1 EH m=w 2 SEC soc #il B NE h SWA I T RTS MSWAIT SUDROUTINE DELAY 86 USEC. DOUBLE-BYTE INCREMENT. DC 12;r 'N' INTERVALS (A-REG COUNTS) DISK READ/WRITE T Rf CK/SECTCR ( 16) 17-APR-el #C 00252 P,Ge -r **Ive OISK READ/WRITE TRACK/SÉCTOR ( 16) 17-APR-61 #000252 PAGE:27 F 4;,7: 474 F 4 t 7: 475 * F 4,% 7 ' 476 * PHASE Cj J-e OFF-TIME F 4 é,7: 477 * TABLES IN 100-USEC F 4 c 7: 478 * INTERVALS (S Et:àO F 4 ,7: 479 * F 467: 480 F 4 t 7:01 30 28 4 SI ONTABLE DFB là$ 30 j$ 2 t 3 F 4,b A: 24 20 IE 4 921 DFB $ 2 '4, $ 20 e $IE F 4 D: ID IC IC 483 DFE $ID,$IC,$IC F 470:70 2 C 26 484 OFFTABLE DFD $ 70#$ 2 C,$ 26 F 473:22 IF IE 4135 DFB $ 2 ii#$IF,$IE F 476:ID IC IC 486 DFD $ID#$l C Sl C C> Co %G 11-4 rq ii, 1 S 21 DISK READ/WRITE TRACK/SECTOR ( 16) 17-APR-131 #000252 PAGE 28 F 479:86 83 F 4,?B:AO 05 F 47 D: 48 F.4 'f E:OA F 4-,F 26 83 *F 481: ES F-4,q 2: DO FA F 404:6 e F 485:219 07 F 487:AS F 4 & 8:D 9 AO F 4 F 488:85 84 F 48 D:20 00 FO F 4,'O- EO OE F 492:E 6 86 F 4, 4:E 6 84 F; 96:E 6 94 F 498:20 00 FO F 49 B:C 6 86 F 49 D:A 5 ES F 49 F:60 F 4 AO: F 4 AO: F 4 AO:00 04 08 F 4 A 3:OC 01 05 F.4 A 6:09 OD F 4,;S: 489 BLOCKIO 491 TRKSEC 507 CUIT 509 * 510 SECTABL 514 * STX LDY PHA ASL ROL DEY DNE PLA AND TAY LDA STA JSR BCS INC INC INC JSR DEC LDA RTS EQU DFB DFB DFB IBTRK #Sb A TDTAK 1 RKSEC #$ 7 -ee-'CTADL#Y ISSECT REGRWTS CUIT l DBUFP+l ISSECT IDSECT REGRWTS IDDUFP+l IBSTAT $ 0, $ 4 j SE $Ct$lt$ 5 $ 9 J $D r%) LM r U c> Co 1 % O - ski T 52 DISR READ/WRITE TRACK/SECTOR ( 16) 17-APK-01 #000252 PAGE f 4 AIB: f 4 AS: f 4 AS: F 4 AS: F 4,48: F 4,;s; F 4 AS: F 4 AS-. F 4 AS: F 4 AS: F 4 r'%S: F 4 AS: F 4 AS: F 4 AS: F 4 AS: F 4 AS: p 4 AS: FFD 9: FFDS: FFD 9: C 066: F 4 AS: F 4 AS: F 4 AS:SD D 9 FF F 4 o;D:AD EF FF F 4,;E:2 D 66 Co F 4 Sl:30 FB F 423:AD 66 CO p 4 M à: 210 OC F 4 21 'S: 1 S F 4.':,9:AD D 9 FF i:41;C: AC DS PF F 4 ç',F 10 03 F 4 ' 'I:AD D 9 PF F 4.'- 4: 60 516 * 517 * 5119 * 519 * 520 * 521 * 522 * 523 * 524 * 525 * 526 * 527 * 529 * 529 * JOYSTICK READ ROUTINE ENTRY: ACC- X&Y- * * 4 * * * * * 4 COUNT DOWN HIGH * DON'T CARE EXIT: ACC" TIMER HIGH BYTE Y TIMFR LOW DYTE. CARRY CLEAR IF CARRY SET& ROUTINE WAS INTERUPTED & 530 * j 531 * * * - 532 * 533 T 1 MLAT 534 TIMERII 535 TIMERIJ 536 JOYRDY 537 * 538 ANALOQ 540 ANLOGI 549 ' 550 GOODTIJ ACC b Y ARE INVALID CH L H EGU EGU EQU EGU EGU STA LDA AND DMI LDA ami CLC LDA LDY OPL LOA RTS $FFD 9 $FFDB *Fr D 9 t CO 66 T If ILATCH INTERUPT JOYRDY ANI col OYRDY 000 DTIME TIMERIH TIME Rl L COODTIME TIMERIH i CARRY SHOULD DE SE Tl i START THE TIME Rl j WAIT FOR ONE OR THE OTHER TO GO LOW j WAY IT REALLY THE JOYSTICK? NOPE, FORGET IT. i TIMEIS A SLIP SLIDIN AWAY i N 0:41, WHAT T 1 ME 1 S 1 T? i TIME WAS VALI Dl i HI BYTE CHANGED. Il E **-e SUCCESSFUL ASSEMBLY: NO ERRORS ru tn ru c> c" NO - 1 * 4 SYMBOL TABLE SORTED BY SYMBOL 17-APR-81 #000252 PAGE 30 F(i E 9 F 4 AD F 12 B 9 D l O Pzioo ,CZ#80 EO FOES SA F 41 F c)qq F 456 F ei 5 5 F 2 AC "Zcisl F'-422 F'- F 2 E 4 cc 8 c F 14 D F 17 E Fr IAF FIEA Pi DD F 19 D F 149 F 14 A -,FI 06 P 44-4 F" 4 s :-F 429 FFI)9 07 D F 2 5 6 -; E ri c ALDONEI ANLOG 1 CHKDRV CONWAIT CSSTV DNIBL DRVIEN DVMOT GOCAL HNDLERR IDDERR IB Sg CT IDTRK IODPDN MINTST MOTOROFF MSWAIT NIBL NOWRITE ONEMEQ PHASEON PNIBL 2 POSTNIB 16 PRENID 3 G 6 L RDI RD 5 A RDS RDA 4 RDADR 16 RDCKSUM READI 6 R S Y NIC SEEK 1 SEEKEND SETPHASE STEP TIMLATCH TRKN 1 TRYTRK 2 VRYFRST WINTRPT WNIDL 9 M 'r 'r FOEO ?F 479 F 13 D FOC 7 F 031 FOE 5 FFDF F 4 C 4 C 066 9 A C 089 F 105 ?FO 60 F 11 B F 467 ?Coel F 336 F 2 CA F 2 FB COSF F 157 F 17 D Fl CB FIF 2 FIEE 3 FIDS FOOO FOBB F 40 A ?F 455 F 125 F 47 E F 065 F 271 F 26 A F 267 N n-5 ALLDONE BLOCKIO CKDRTS CORRECTSECT CSU? Il DRIVSEL DRVERR ENVIRON GODDTIME HRDERRS IDDRVN IDSLOT IDWPER %)OYRDY MONTIMEH MOTORON MYSEEK NODRIVERR NXOFF ONTABLE PHASON POSTI, PRENIBI PRENID 4 G 7 H RD 2 RD 5 RDAI RDA 5 RDAFLD RDERR REI,%RJTS RTTRK SEEK 2 SEEKRTS SEITRK TEMFI TRACK TRKSEC TRYTRK k JDATA 2 WMIDLE WNTPPTI 8.1 m Ir 1 F 119 ALLOFF 9 D DUF 96 CKSUM *?FODF CORRECTVOL 89 csuli COSA DRVOEN F 13 E DRVINDX 9 F ENVTEMP ?F 116 GOSEEK ID Durp TDNODRV 69 IDSMOD BD lfflffl LAST 99 PION 71 MEL F 459 MSWI NDUFI FOSD NOINTRJ F 470 OFFTABLE F 41 D OUT ?COBO PHSOFF F 339 POST 2 F 2 C 6 PRENID 9 D PRIOR COSE G 7 L F 162 RD 3 F 192 RD 6 FID 2 RDA 2 F 204 RDA 6 FICD RDASNI F 217 RDEXIT 93 NETRYCNT F 4 AO SECTABL 94 SEEKCNT F 2 83 SERVICE F 354 SEV FFD 9 TIME Rl H TRKCNT F Oeib TRYADR 2 7 F TWOMEG F 281 WDATA 3 ?F 2 DF WNIDL F 295 WRCKSUM ?F 4 AS ANALOG F 12 D CHKDRV 1 F 44 A CLRPHASE COUNT BC CURTRK 'DRVOTRK F 03 D DRVWAIT ?FOAO GOCAL 1 FIBA GOSERV 87 IDCMD ? 83 IDRERR 88 IDSTAT FFEF INTERUPT F 425 MAXTST F 04 E MOTOF F 461 MSW 2 0302 NDUF 2 FOF 3 NOINTR 2 F 044 OK COSO PHASEOFF F 315 PP 41 BLI F 34 C POSTERR ?F 2 E 7 PRCN 1132 COSD 06 H F 49 D GUIT F 16 B RD 4 FIA 5 RD 7 FIDD RDA 3 F 20 E RDA 7 FIC 1 RDASYN FOA 7 RDRIGHT F 152 RSYNCI 98 SECT F 400 SEEK F 34 C SE Tl MEQ F 42 B STEP 2 FFDS TIMERIL 9 E TRRN F 07 F TRYADR 9 A VOLUME F 218 WEX 1 T F 2 BD WNIBL 7 F 219 WRITE 16 = '71 " rs %ecr 1 mr, Un c> Co % O 1 S Yr IDOL TABLE SORTED DY ADDRESS 17-ARR-81 #000252 PAGE l 7 F si 9 D cciso C 099 COBD Fci 3 l F 050 P 07 F IFC)Al FCIC 7 FC)E 9 IF I 06 Fj 3 E Fi 52 F 37 D FIA 5 FIDD FI D 2 Fl F 2 FZIB F 714 E r 26 A eé-,Ac 2 'E 7 F 51 5 : 1 % 4 C F-: 00 F 425 F-45 F 456 = 4 9 l F-4 AS FFD 9 TWOMEG IDSLOT 113 RERR 12 BU Fp 1 BSMOD RETRYCNT COUNT TEMP TRACK PRIOR N 13 UF 1 PHASEOFF Pl OTORON 06 H DRIVSEL CONWAIT TRYADR GOCAL CORRECTSECT ALDONEI SEEKI SETTRK DRVINDX RSYNCI RD 5 RD 7 RDADRI 6 RDA 2 RDA 5 WEXIT WINTRPT WMIDLE NOWRITE WNIBL PRENID 2 PNIBLI POSTERR SEEK MAXIST SETPHASE mswi BLOCKIO ANALOG 71 MLATCH IDP 40 DRV 81 IDMRER 83 IDTRK 87 IDCMD SA IODPDN 94 SEEKCNT 96 CKSUM 98 SECT 9 A MONTIMEH 9 E TRKN 0302 NDUF 2 ?CO 31 PHASON COSA DRVOEN COSE 07 L F 03 D DR Vk IAIT ?FO 60 NODRIVERR F 086 TRYADR 2 FOA 7 RDRIGHT FOEO ALLDONE FOF 3 NOINTR 2 ?FI 16 GOSEEK F 12 B CHKDRV F 148 READI 6 F 157 RD 2 F 17 E RD 5 A FIAF RDS Fl Cl RDASYN FIDD RDA 3 F 204 RDA 6 F 219 WRITE 16 F 256 VRYFRST F 271 WDATA 2 F 2 83 SERVICE F 2 C 6 PREN 1316 F 2 FB PRENID 4 F 322 PNIDL 2 F 34 C SETIMEG F 40 A SEEK 2 ?FA 29 STEP F 44 A CLRPHASE F 461 M Sk J 2 F 47 E TRKSEC F 4 AE APJL 001 FFD 9 TIPIIC-Rl H HRDERRS 92 IDDERR 64 IDSECT as IDSTAT BD IMASK LAST 97 CSSTV 99 MONTIMCL 9 A VOLUME 9 F ENVTEMP C 066 JOYRDY ?COSI PHASEON ?COSD DR Vi EN COSF G 7 H F 044 OK F 065 TRYTRK FOSD NOINTR 1 FODD RTYRA FOE 5 MNVERR FOF 9 WRIT F 119 ALLOFF F 12 D CHKDRV 1 F 14 A RSYNC F 162 Rr,3 F 192 RD 6 Fl BS RDERR Fl CS RDA 1 Fl ES RDAFLD F 20 E RDA 7 ?F 223 W àl"Z T 1 F 258 W#"%T F R S T F 281 WDATA 3 F 2 BC WNIDL 9 F 2 CA PRENID 1 F 300 DNIBL F 336 POSTI F 354 SEV F 41 D OUT F 42 B STEP 2 ?F 455 SEEKRTS F 467 ONTABLE F 49 D GUIT F 4 C 4 GOODTIME FFDF ENVIRON Sc EO ?Coso coss coec Fooo F 04 E F 07 B ?FOAO ?FODF FOES F 105 FIIB F 13 D F 14 D F 16 B F 19 D Fl BA Fl CD FIEA F 21 7 F 230 F 267 F 295 F 2 BD F 2 E 4 F 31 1 F 338 F 355 F 41 F F 444 F 456 F 470 F 4 AO FFDS FFEF ONEMEG IDDRVN DRVOTRK CSUM *CURTRK TRKCNT Cs Umi TRKNI BUF DVMOT PHSOFF MOTORCÉr F 06 L REGRWTS TRYTRK 2 CALI CORRECTVOL HNDLERR MYSEEK NXOFF CKDRTS RD 1 RD 4 RDCKSUM GOSERV RDASNI RDA 4 RDEXIT WSYNC WNTRPT 1 WRCKSUM WNIDL 7 PRENID 3 POSTNID 16 POST 2 NIBL M 1 NTST SECKEND Pl SWAIT OFFTABLE SECTABL TIME Rl L INTERUPT pu tn ra c> Co NO - %a Gzir I-ztarittf la 31 CA ilèdél 168 ozsz ke ii DIAGNOSTICS SARA DIAGNOSTIC ROUTI,' 'I $ COCO: OOCJO- c 1 c-O 0000: 0000: COM Coin: 00 M 001 A: 0087: : 0091. F 479: 0050. 0 CFF: 1419. 1.3 io, Coc:0. C: ( ' 8: Co.10 co"r C > 7: C 0,30: cotl: co" cDto: CCFL: c Dl M. C Cr 3: C 1 cpo: C.100. C'.1 CFFP: FFOO F;r L, g FF 02: FFú& 3 FFEO FFEF. FFú 2: FFE 3 F C,; 5: gr V 07 por F, 0 r.0 Z 7 FLI;é Or DIZD 4 *SARA DIAGNOVIC TEST ROUTI '4 t S 3 * à *DECEMDER 18,$ 979 7 * DY 8 *W BROEOPIER tt R t ASHLEY 9 O *COPYRIGHT 1979 DY APPLE COMP Ur ER INC. Il 13 ROM EOU si FOR RAM VERSION 1 Ilr TRUELY ROM 14 ZR Pt; ECU $O ZR Pel ECU $Io 16 PTRLO ECU ZRPOI 49 le SNK úOU ZRMGI**A 19 tscm D EOU $ 87 189 UFP ECU t 85 21 PREVTRA Eau 091 22 BLOCKIO ECU IF 479 23 Cv EOU 85 D 24 S 7 KO EOU t FF IDNK eau 81400 +RTRHI 26 PHP EOU 11800 +ZRPGI 27 KYOD EOU ocooo 29 KEYBD Eau tcoos 29 KODSTRD ECU *COIO PDLEN Eau 4 coce ai AORS E 02 VSC 047 32 CRMD ECU *COSO 33 TXTMD Eau SC 051 34 A Dt O EOU IC 066 DISKOFF ECU scooo 36 ACIA 57 EOIJ ICOFI 37 A Cf ACM EOU SCOF 2 3 J 3 ACIACN ECU * C O F 3 39 SLTI ECU scloo SLT 2 ECU 4-C 200 41 SLT 3 Eau scioo 42 S Lt 4 EOU t C 400 43 EXPROM ECU SCFFF 44 ZPREG EOU FFD O SY 501 EOU $FFOF 46 SY 502 EOU SFFD 2 47 SY 503 Erili $r FO 3 49 SYSEC EOI) %FFEO 49 ONKSW EOU té-FEF SYSE 2 EOU SFFE 2 51 SYSE 3 EOU Of-FE 3 C 2 COUT E 13 U'SFC 25 53 CROUTI EOU OFD 07 14 XEYIN EOU IPDOP S Er CVH EIJU $FOC? 56 CLO Sr RT ECU t Foge 57 SETUP ECU 3 FO 90 hy t A ru c> c" %O ** 4 17-APR-81 0000253 PAGE 1 a 6 e,4,4,e,, jz, , r, 17-APR-81 mooo 253 PAGE 2 L Il Z-'%OST 1 C 5 SARA Di Ae:40511 C ROUT 11-ws Eoi OF 901 is DIA 9 coi ORG t F 4 c 5 DFR 1 c; , 1, NEXT ouiú F 4 c 5 F 4 C-1 00 BI B 2 F 4 r's s^ 89 10 r 4 c B:oo 13 F 4 z D, F 4 CD:52 41 CD FADO: 52 AF CD F 403:56 49 CI F 41,6: 41 43 4,9 F 4 it 9: CI F.IDA 41 2 F C 4 F 4 rD:44 49 41 F 4 ED- 47 4 E 4 F F 4 E 3 52 54 49 F 4 EàC 3 F 4 F-7 5 A DO F 4 E 9:52 45 54 r 4 Ec-52 D 9 FAEE- F 4 CE. F-IEE. F-ICE- F 4 r E:A 9 53 F.iro:úD DF FF F 4 r 3 A 2 00 F 4 F 5:BE ÉO FF F 4 FB:s E EF FF F 4 FB:SE DO FF F 4 FE:CA F 4 $:F:&E D 2 FF F 502:SE DS FF F 5 C> 5 9 A F 5 rj 6,úB F 5:i 7 A 9 F F 5 19:8 D E 3 FF F 5,t C A 9 3 F F 50 E-ED E 2 FF F 511:AO 06 F 5113:89 DO CO F 516,BB F 5 17 89 F Iple:10 F 9 F 51 A- AD 08 CO F',M 29 04 F 51 FDO 03 F 12-1:4 C 89 F 6 FZ:4 ' F 524 F 5 ''4 Wt-24 A 01 F 5 Z-6:' 5 00 'bz-8:D 5 00 re 2 A DO r E 58 MONITOR 29 a CT r ILE NAME 61 RAMTBL 6 v CHPQ EGU DC 1 DC 1 DC 1 DCI RAM' ROM, IVIAI ^CIAI DCI IA/D 1 DCI 'DIAGNOSTIC' DCI IZ Pl DCI 'RETRY' 71 * 72 O SETUP SYSTEM 73 a LDA #tl 76 STA Syi 77 LDX #11 79 STX Syi 79 STX B Ni STX Z Pl si DEX B 2 six SY 83 STX SY 84 TXS INX 96 LDA Ait 97 STA SY es LDA #0 89 STA Sv LDY 01 91 DISKI LDA Di 92 DEY q_ DEY 94 DPL DI LDA KE 96 AND 4; 1 97 13 NE N' VERIFY ZERO PAGE 102 NXDYT LDA #Il 103 NXBIT STA zi 10.1 CMP zi NOGOOD DNE Ni TUR 19 OFF SCREEKI SET 2 MHZ SPEED ^ 140 RUN OFF ROM. SET BANK SWITCH TU ZERO AND SET ZERO PAGE SAME PROGRAM DDR'S 52 +POM MID 1 DO SEO W REG SD 2 SD 3 OF SE 3 3 F SE 2 SKOFF, Y SK 1 WDD 04 t DYT COIN ROTATE A 1 y HROUGH EACH DIT IN THE O PO TC COMPLETELY 7 EST THE RAGE HANG IF NCOOOD. &OI RPG x RPG x DCCOD ru tn rlà c> c" 1 % O - DIACPIOBTICS SARA DIAGNOSTIC ROUTINCS 17-4 PR-91 #000253 PACE 3 TRY NEXT DIT OF BYTE UNT'IL BYTE 19 ZERO. CCUTINUE UNTIL PAGE 1 S DONC. PVSH A DIFFERENT BYTE ONTO THE STACK U Nr IL ALL STCK BYTES ARE PU Lt. FIN PULL THEM OFF AND COMPARE TO T Ht COLINTER COING BACKWARDS HANG IF THEY DON'T AGREE. CET NEXT COUNTER BYTE CO Nr INUE UNTIL STACK 19 DONE TEST LAST BYTE AGAINST ZERO. 1932 c: CA gr'l ZD: DO 97 F;F Es F 5,50: 00 F 2 FIJ 32. F 11-Z 2: CA or,5:33: 413 " 34: ES F,535, 00 plu F 1317; CA F 1338:86 19 F 53 ^: 68 F 53 s' C 5 la F 530:DO Es F 53 F:C 6 18F 54 %:DO F 7 " 43; 69 F 544:00 ú 4 F 5-J 6: r-546: F 546; F 5 A 6:^ 2 09 P 54 s q 5 10 F 54 A CA Fl'4 D 1 O FB F 54 D. F 54 D:A 2 02 F 14 F 96 19 F 5 I:A 9 00 9:5 r 3 AO FF cl 5 en le F 51701 113 r 51 9 PO 07 F 5 D 20 40 F 7 r 5 EP 410 Flt:O-A 6 19 9:tb 2 ES F 5.43: EO CO F 165 DO E 13 F 1-c L 7 A 2 20 Fi-,9:EE EF FF rlb C AD EF FF F 56 F:29 OF F'5 '1:C 9 03 P 373-LO 04 P 375 F 575 P 375 2 o 90 Po P 578,A 2 00 F 57 ABE EO FF F 370: CA K 57 c SE D 2 Pr t 31: SE 03 FF 9 '524 A 9 3 F *r 3 E 6 e D E 2 FF F',39:^ 9 09 los ill CNTWR 117 PYLOT 124 * * Bl ZE 1 126 * 128 NOMEM 133 MMEMI 142 NMEM 2 152 " SETUP 153 ERRLP ASL A SNE NZBIT INX ONE NXBYT TXA PHA INX ONE DEX STX PLA CMP ONE DEC ONE PLA ONE CNI WR PTRLO PTKLO Nl C-1000 PIRLO PULBT Pl ICCOOD ME MEMORY ZERO THE BYTES USED 70 DISPLAY THE BAD RAM LOCATIONS EACH BYTE A CAS LIME ON THE SARA BOARD. STARTINQ AT PAGE 2 TEST THE LAST De TE IN EACH PIEM PACE TO SEE IF THE CHIPS ARE TPE,-E (AVOID O tc STK PAQES) CAN THE BYTE DE O'D? JO, FIND WHICH CAS IT l S SET CORRES BYTE r O FF RESTORE X REGISTER AMD INCREMEMT TO NEXT P Aj E VNTIL 1/0 15 REACHED. THEN RESEI TO PAGE 20 AND COTO NEXT BANK TG CONTINUE (MASA INPUTS FRC-M BANKSWITCH TO SEE WHAT SWITCH IS SET TC) CONTINUE UNTIL BANK '3 ' CALL SCRN SETUP ROUTINE SVVP 1/0 ^GAIN FOR VIA TEST PROGRAM DATA DIR REOISTERS LDX #308 STA 'ZRP",I, X DEX ORL NWIEM LDX STX LDA LDY STA crim CEG )SR STY LDX INX CPX BNE LDX INC LOA AND CMP 014 E SCREEN v SR LDX STX DEX STX STX LOA STA LOA #102 FITRHI 43 FF (PTRLO), Y (P r RLO), y RAP'. ZR'2 G 1 X PTRHI ##CO N'Mw M 1 #120 8 (,sw Er";&Sw #top #103 Nil> M 1 SETIJP %brio SYSEO SY 502 - SYSD 3 & b 3 F S'SE 2 #$OF m Lm rlo c> c" % O 1 * 4 17-APP-81 #000253 PAGE 4 L-1 1 CS Se RA DIAC 140-,TIC POUTI%- 1 bz $TA S LD> &I 164)SR si i 6 Z, ERRL Pl LDX &I 166 BYX c% 167 LDA & 1 16 Es -isri SE 16 q JSR si LDY 4 ài 171 RAMWTI Eou O 172 LDA Zf 173 LDY #1 174 RAMWY 2 ASL A PHA 176 LDA ai 177 BCC RO 178 LDA * 1 179 RAMWT 4 JSR IBO PL^ 181 DEY 182 UNE Ri 183 JSR ci 184 DEX 8 PL, R 4 I 56 197 2 P Ot STK TEST 189 TXS STY 01 191 Z Pl TYA 192 STA ZF 193 STA SI 194 INY TYA 196 PHA 197 PLA 199 INY 199 CPY #1 UNE zi 201 LDY #1 202 STY ZI 203 STX P 204 ZP 2 INX 205 STK P, 206 TXA 207 CMP(PTRI 2 OS UNE zi 209 CPX #1 210 UNE Zi 211 DEG RI 212 ZP 3 EGU 213 LDY 214 JSR mi 21 f, 216 * ROM TEST ROUTINE 217 * ISED IRWT i 00 p to 4 p Tc VH r Rw T ffl tpcl x e O a >AE V 1141 4 e 3 l MT %'IWT 2 ou T 1 UIWTI Fl,L-D b D F 3 F r F 5 &EA 1 O F 5 " 20 38 F 7 F- 1; 13 A 2 00 F 5 5 86 131) 9507 ^ 9 04 Fc Q 20 C 7 FB fr;O 38 F 7 or 5 F; A 2 07 F 541: FSAI: E 5 10 FCA 3:AO 00 F 5 A 5 OA F 5 A 6; 48 Fl; 7; ^ 9 AE F 5-49: 90 02 F 540:A 9 Il F 5 AD:20 5 FC F 5::O: t,13 F.'I:SS F'l Z 2:DO FI F 5 C 4: -O 07 FD F 51 7: CA F 5 ZE:10 E 7 F 57 A F,,DA F 5 DA: F 5 'ZA:9 A F',ID:BC EF FF F 5-E:98 F 5 î 1 FSD DO FF ç 5 C 2 85 FF F 5 C 4: CS F 5 C 5:99 F 5 6:45 F 5 C 7:68 F 5 B:CS F 5 9:C O -O F 5 c D: DO FI F 5 CD AO 00 Fl.CF:e C DO FF F 5 D 2:86 18 F 51 & 4 ES F 5 Z 5:86 li? FD 7:9 A F 5 C-B:Dl 18 F 5 IJA: DO 06 Fl DC:EO IF F 1 DE: DO F 4 Ft-EO:FO 05 F f-E 2: w 5 E 2 A 2 IA E 4; 20 7 D F 7 F 527: F 77: Fî-7 HEADINC OF 'DIAQUSTICS' WITH THIS SUDROUYINE PRINT 'RAMI SET CURSOR 10 2 ri D LINE SPACE CURSOR OUT 3 (X STILL-0 ON RETURN) IMC BAMC SVUROUTINE FUR DYTES 7 O IN OUT EACH BIT AS A OR Il' FOR INDICATE CHIPS SUDROUTINE 'RAMI SETS UP THESE BYTES LOAD A ' ' TO ACC. LOAD A Il' TC ACC AUD PRINT IT RESTORE BYTE A Nn ROTATE ALL 8 T 1 tirs. CLEAR TO END OF LINE. BAD OR MISSINC RAM :KSW >REC r KO tzo > 1 too >REG 1 RLO r RHI -0) y > 3 t IF > 2 11 MTST bl A E-SSERR 1 1 CHIR 15 THERE, BAD ZERO AND STACK SC PRINT 'ZP' MESSAGE L SET FLAC ( 2 MHZ MODE). r 1 J Ln r.) c> Co No -Ibé wgggze 2 PAGE 5 #FT POINTE*$ 70 SET x Ta SFF FOR WINDOWING Z/O C Ci Cw Ksum ON EACH ROM DYTE, RANGES FFCO-FFEF TEST ^cc FOR O YES NEXT TEST PRINT 'ROM' AND SET ERROR SET UP FOR ADDINC BYTES MASK OFF INPUT DITS AND STORE BYTE IN TEMPOR LOC Arlo-4 MASK OFF INPUT BITS AND ADD TC STORED BYTE IN TEMP LOC. ADD REMAININC REOISTERS OF THE VIA's (MASK THIS ONE) AND TEST TO SEE IF THEY ACREE WIYH THE RESET CC-DITIO 1 j. -El? YES NEXT TEST PRINT 'VIA' MESS. AND SET ERROR FLAC SETUP FOR ADDITION MASK INPUT Bl TS FROM STATUS REG AND ADD DEFAULT STATES OF CONTROL AND COMMND RECS, vio? YES NEXT TEST NO, ACIA' MESSAGE AND THEN SET ERROR FLAG Ln lu C> c 11 1 % O 219 ROMTST LDA 4 219 TAY 220 LDY O STA O STX p LD 224 ROMTSTI COX "Z 15 CPX P 226 D pic P 2.17 CPY ti 2213 BWE R 2 v 9 LUY 230 ROMTST 2 INY 233 DNE R 232 INC P *133 UNE R 224 TAY 235 SEO v 236 LOX ai 237 JSR mi 239# 239 * VIA TEST ROUTINE 240 * 241 VIAYST CLC 242 CLD 243 LDA S', 244 AND #1 245 STA Pl 246 LDA sr. 247 AND ait 248 AOC Pl 249 ADC ZP 250 STA PT 1 LVA Sy 52 AND 253 AOC PT 254 AOC SY AOC SY 256 AVC Syl 257 AOC S Yl 258 cmip ati 259 BEO Ac 260 LDX #$ 1 261 JSR mel 262 * 263 * ACIA TEST Roi 26 t ACZA CLC 266 LDA 267 AND tic 1 266 AOC ACl 269 AOC ACI Z 70 cjp &SI 273 SEO ATE 72 LDX #*O 273 JSR MES Fli 1 49 00 F 5; 9 AB F 5 CA ^ 2 FO p 5 EC: 05 la F 1-EE Sà ig 914:0 ^ 2 FF F 2 X ti 1 O F',,'4:E 4 ig F 5 r 6:Do 06 F 59 B CO DF Fr A;Do 02 r 5 FC:^O EF FSFF-:CB F 5 FF:DO Fi F 601:E 6 19 F 602 DO ED F 6 fj 5: AS F 6 CP 6, FO 05 F 60 e:A 2 03 F 60 A:20 78 F 7 FàOD: F 6:t D F*-D- F dbb D, JO F 60 E:De F 6,'?F:AD EO FF F 612 29 3 F F 614:05 le F 416:AD EF FF F 619:29 4 F F 618:65 IE 3 F 61 D:ED DO FF F 6.10 85 la F 622:AD OF FF r 6.15:29 5 F F 627:65 la Fà.19:6 D D 2 FF F 62 C:61) D 3 FF F 629:6 D El Fr F 632:6 D E; FF F 625:C 9 El Fà '7;FO 05 Fé> 9 A 2 06 Fé, 3 E; 20 78 P 7 P 6 '3 E- Fb:k E: F 6 Z 4 E: F 6:4 E: J 8 F 63 F:A 9 9 F F& 41 2 D Fi Co F 644; 6 D FZ Co FL-47:6 D F 3 Co p 64 Ac 9 10 9 ú-4 c FO 05 9:64 E: A 2 09 FblO 2 D 70 F 7 igge 19 FO TRLO ITRHI s FF PTRLO), Y TRMI *DF 011 YST 2 tlEr MITSTI TRHI ONTSTI 1 ATST ESSERR rs EO r 3 F NLO Msw :4 F RLO REG RLO SOI F RLO SD." ED 3 SE 2 SE 3 EO+RD 'l IA D 6 ERR W AST ACM ACN g SERR 17-APR-81 #000253 PAGE 6 DIAGNOSTICS SARA DIAGNOSTIC ROUTI Ug S F'j 3: F 6 ": F 6 % 31 FA-53: Aq CO F 655: OD DC Ffe F 6 ca:AD 3 A CO 965 Dz AI) 5 E CO F 6 e E:AD 3 C CO Fàbl:AO 20 F 663: 88 F 6 A,4; 00 FD g 6 t WAD 5 D CO F 6 A,9: r 03 F 66 A:FO OA F 62 t C:AD 66 CO F 66 F:30 FB F 671:98 F-572:29 EO F 674-FO 05 F 676: F 676:A 2 00 F 679:20 78 F 7 F 678. F 67 D: F 67 D. eb 7 o: %D 08 CO Fb-E: Oà% gbr F:10 41 e-4 q-l:AD DF FF çrbs 4 I O 03 c'6,36: JC 93 F 5 FJPB 9 ' -7 te 9 A 9 77 91 2 D SD DF FF à:E:20 98 FD 961 ql:A 9 10 ri,,z 3 20 O 93 Co 76 C 6 rio 09 F'61 ye 2 C 10 CO F.b' D AD 50 CO F 6 E 2 O 01 F 9 F 6.; 1A 201 F: 3:86 J 37 CA 86 85 F 6,,9 A 9 AO Fb AA:95 Bâ Fb AC 4 A F 540:B 5 91 F 6 AF:PA Fb DO 20 79 F 4 0 e E; 3 90 OA 9635:A 2 IC 274 * 275 * A/D TEST ROUTINE 276 * 277 ATO LDA #$CO 279 STA af-FDI 279 LDA PDLEI 280 LDA PDL Ei 281 LDA PCLEI 282 LDY #* 20 283 ADCYSTI DEY 284 VIE Acc Ti 2 $ 35 LOA PDLEI 286 ADCTST 3 INY 287 BEG ADCEI 288 LDA AUTO 289 ami ADCT 290 TYA 291 AND *SEO 292 BEG SEY Pl 293 ADCERR EGU -* 294 LUX #101) 295 JSR MESSI 296 * 297 * KEYBOAD PLUCIN TEST 298 * 299 KEYPLUC LDA KEYBI 300 ASL A col SPL SEY. 302 LDA SYSD 302 DPL RECOI 304 i Mp EPPLI 305 * 306 O REC Ot:Fle URE SY St E Pt 307 * S RECON Eau 309 LDA *t 77 310 STA SYSD 311 JSR CLDS' 312 LDA 4310 313 AND REYSI 314 BNE Zon T 315 UIT KUOS' 316 LOA CRHO 217 %)SR 310 BOOT LUX #1 319 Slx lact' 1 320 DEX 321 STX ( 13 DUI 222 LDA *IAO 323 $TA J unug 324 LSR A 325 STA PHEV' 326 TXA :327 JSR OLOCI C 28 OCC 90509 JZ 9 LUX éblic c 4 + 2 4 + 6 4 + 4 STI 4 + 5 RR ST 3 UG EÈR WAIT FOR 40 USEC SET A/D RAMP COUNT FOR CONVERSION (> 235-ERROR) IF BIT 7 -I? YES, CONTINUE t'Io, MOVE COUNT TO ACC ACC 140. PRINT 'A/D' MESS AND SET ERROR FLAC D Ni p 1 IS KYOD PLUCCE O IN? (IS LIGHT CURRENT PRESEN") NO CRANCH IS ERROR FLAC SET? ( 2 ê,tlz MODE) l'Io, BRANCH ERROR HANG. r RT D r RO r OR P P+l f RK ila IT TURN ON SCREEN INITI At IZE MONITOP AND TEST FOR 'APPLE Io DEFAULT CHARACTER SET NO, DO REGVLAR BOOT CLEAR KEYSOARD AND NEVER COPIE BACK - READ OLOCK O INTO RAM AT OAOOQ àF Gq TRACK 80 MAKE TT R 9 C AtII 3 RATE 7001 IF W Vve SUCCEEDFD Do TT VR Ki Ln c> 00 1 % O 1 1 % 4 17-APR-81 #000233 PAGE 71 RETRY?' & (kg TC IT POOL DIAGNOSTICS BARA DIAGNOSTIC ROVTINCS Fbr 7,zo je F 7 F 66 ^:, o 09 PO F&DO'CO E 2 - F 16 VP: 4 C 00 AO f 6 c 2. lr,éç 2: Ac 7 p te iméc S 29 FE 49 4 E Fbc 9 Fo 03 orbc 0: D 9 00 Co F 6 CE:88 F 6 c F:00 F 3 F* 01:An 51 CO F 6 D 4:69 00 CI F 6-n 7:Dq 00 C 2 F 60 A 89 00 C 3 F 6 DD:89 00 C 4 FI-EO:AD Pet CF F 6 E 3:CS F 6 '-e 4, DO EE F 6 E 6: FAE 6: F 6 E 6. 7656:A 9 73 F 6 E 9:6 D DF FF Fb ED:A 9 la 9 '6 e D;SD DO FF 9 -'=O: Aq 00 Fie'2 A 2 07 F 6 c 4 95 10 ete 6 CA FB 134 F 7 F''c C 08 Fbe D:20 F 7 F 7 9700:20 F 7 F 7 F 703: -'e F 7 04,6 A F 7 C 3:O 9 F 716,20 Ai 97 F 7 c 9 00 P 2 F 7 C,0:20 84 F 7 F 7 VF-20 PU F 7 F 712; 48 F 7 J 3 A 9 00 F 715 'ql 19 0717:68 W 7 J 9 28 er 7:9 6 A F 71 A: 08 Feu 20 AI 97 F 71 E 00 EF *:lDo 'Jo R il 331 45 R 332 ocs C 33 COBOOT)Mm 01 334 O 333 OYITEM EXERCISER 337 M LOY 01 339 "Xi TYA 339 AND #1 3140 FOR 41 341 BEC SE 342 LVA K) 343 SEX 2 DEY 244 ONE SE 343 LDA T 1 346 SEX 3 LOA Et 347 LDA et 34 e LDA lit 349 LVA et 350 LOA El 351 INY 352 ONE SE 354 RAM TEST ROUTINE 356 USRENTRY LZA #3 r Rw T lYIN My erg e 4 E EX 2 (BD, y x 1 c TMO Ti, y T 21 y M, y T 4, Y rp Rom :x 3 TRYPRON 7 P TO O ADD a 4 EOR 4 F? YEBISKP Pic CONT NXT ADO SET TXT EXERCSE ALL SI-OTS DISABLE EXPANBION ROM AREA e 72 +R Ol 362 RAMTSTO 367 RAMTSTI 376 RAMTST 4 3 % 33 STA LVA STA LDA LOX STA DEX OPL JSR PHP JSR JSR PLP ROR PHFI VSR ONE JSR PHP, JSR PHA LDA STA PLA PLR ROR PHR JSR BWE SYSOI Jibis ZPREQ *t O 7 ZRPOI, X RAMYSTO RAMSET RAMWT RAIWT A PTRINC R At ITS Tt P.AMSET RAPIRD (PTRLO), Y A PTR INC RWITST 4 r%) LA Ne C> Co 1 % O, 0144 NOSTICS SARA DIAGNOSTIC ROUTIP 19-S 17-ARR-81 9000233 PAGE 8 FIZO: FTZO. F,,2 O: F 72 O A 9 00 F 722;J 30 EF FF F 725:9 D 00 FF fr 7; B: A 2 07 F 7.'A:DD 10 IE 3 F 720:95 10 F 729-CA F 7 CO:10 FO F 7 '32:20 7 E F 7 F 725:4 C 75 F 3 F 7 -_ 8: F 738- 97,39: F 7:i S: 977 jf 3 BD CD F 4 F-,39 49 97 ZC:09 030 F 73 E 2 O 25 FC F,41:Ee 9,7-12; 69 F" 43 10 F 2 gr'745 4 C 07 FD F FI?:O JA F:C -:A "-,E rie F 749 4 A 9, ?'l O:,a F't:AA e 712 PD C 5 F 4 F 715:10 14 F 717:48 gr-59 AD EF FF F 7 * 3 29 OF Cr 7 '5 D AA F 7 E:AG e:'F;EO 00 F 7- 1 FO 13 F 7 r 3 AA r 74IA F 7 y,5 4 A F 766 CA c'7 e,7 CO OD e 7 ,9 Z 9 r J 5 w 7 ba Do -D? 386 * 387 * RETURN TO START 389 LDA 4800 390 STA BlllSw 391 STA ZPREQ 392 LOX 4107 392 RAMTST 6 LDA PWR, x 394 STA ZRRQL X 295 DEX 396 BPL R At ITST 6 397 JSR ER 'CR 3913 imp ERRLP 400 SARA TEST SUBRO Ur INES 403 SUDROUTINE STRINC WRITE 405 STRWT LDA CHPQ X 406 PHA 407 ORA #$ 90 408 JSR COUT 409 INX 410 PLA 411 BPL STRI 4 T 412 JPII Jl*CROUTI 414 SUDROU Tit E RAM 416 RAM PHA 417 TXA 4 I 3 LOR A 419 LSR A 420 LSP A 421 LSR A 42 P PHP 423 LSR A 424 PLP 423 TAX 426 LDA RAMTOL, X 427 2 PL RAYIO 42 P P 14 A 429 LDA 21 e;SW 430 AND àt*OF 431 TM 432 PLA 433 CFX eiv-0 434 MEO RAMI 425 LSR A 436 LSR A 437 L'3 R A 438 DEX 4 -39 3 NE RAMI 44 rj AND " 115 441 PAMO W 4 E PAP- 1 NORMAL VIDED Pd PRNT. NXT CHR CLR TO END 09 LINE SV ACC CCNVRT ADD TO USE FOR e ENTRY L Ofàk UP IF VAL DAI X? SET PROPER RAM VALUE CCNVRT TO VAL r 14) tn m c> CX) %O 11.4 17-ARR-01 O O Ce 23 j PACE BA Nffl p Riri T MESSAGE FIIRST SET 1 M Hz Mo rjj 4 GNGSTICS F 7 L-D'8 A 4 F 741 E FO 02 F 770:^ 9 02 F 772 90 02 P 774:-19 03 P 77 à; 29 07 rl',S:AA 9779 p: 68 fr 77 ^: F 718: F-713 'O 2 B P 7 F-7,F-: F-1 SD DF FF P 733:60 Fr 794: F 7034: F 7 PE 4: F 794:A 2 01 F 786:86 IA F 798:AO 00 F 78 A-A 9 AA F 79 C:38 F 71 ? 0: -19 = 72 E 08 e 7 c F A 5 IA C,;l : g go 97 c 3 e D 19 14 g 7 m 6 A 9 02 r 7 cg;,35 19 97 A -12 00 Filoc, -116 la F 7 %E 29 F 7 r F -,8 F-AO çr 7 A 2 IE 6 IS F 744 DO ID F 7 A 6 A 5 IA = 7 AS 10 OE F 7.,A: A 5 19 = 7 t-C C 9 13 c 7 iE FO 06 :7 VO: Cq 17 F 7 Z 2 VO 04 F 7 r 4 ú 6 19 F-,216:Eà 19 lr 7 t'S Eb 19 r 7 ZA 00 07 v 7 t C C& IA F 7 ZE 6 IA F 7.0 zo VD F 7 SARA DIAOHOSTIC RQUTINWS TXA BEG LDA acc EOR AND TAX PLA RTS RAMOO RAMI 1, SUDRM MESSERR ERROR 42 147 1 4 '9 46 L 46 B AB 3 4 w 4 f 3 E 48-, 49 C 49; 49: 49. 49. 490, 49: R Arloo RAMI i TINE ERROR STRWT #OFZ+R Ctl SYSOI j SR LDA STA RTS SUBROUTIN'E RAMB Er RAMSET LDX #901 STX 2 Ni LDY #800 LUA *IAA SEC RAMSETI PHA PHP LDA ORA #880 STA 1 BNK LDA #302 STA PTRHI LDX 4900 STX Pr PLO PLP PLA RTS SUBROUTINE PTRINC PTRINC PHA INC PTRLO BNE RETS LDA j 3 tl OPL P INCI LOA P Tm Hl C.11 p #513 GEO P INC 2 c Pir #517 DNE Pit-Ici 1 NC PTRHI P INC-1 INC PTRHI 1 PINCI INC PTRHI UNE RETS DEC cpj DEC CI 4 r JSR RAPISE :Tl ru Ln ru c> CD * 1 ra 17-APR-81 #000253 PAGE #10 eliu GNOSTICS SARA DIAGNOSTIC ROUTI-',b-S FC 3 6 B Fc 4: Ab IA 97 à: EO FU F 7 CS: 40 F 7 ( 9; or 7 cg. F 7 9: -19 F 7 c A: Ab 19 F 7 r C A 4 IA F'?CE: S F 7 CF JO 19 F 7 DISA F 702: 30 10 FID 4: 18 F'?C'5: 69 'O *P:l D 7: BC EF FF F 70 A: A^ F 7 L-8:20 49 F 7 çr-, 'E: 65 F 7 r F:48 F 7 r O:AO 00 97 EZ,51 18 c"E 4:15 10 r 7 E 6:95 10 :7 ES: 613 eEq 6 O F-,úA:^ 9 00 :7 EC:9 D EF FF r 7 EF 7 FO EA z 7 FI 38 F 7 F 2:E 9 60 F 7 F 4-CS F'F 5 CO EO F',F 7 Z-97 F-F 7: r-,c 7 49 FF Fr F 9 91 IS 9 '7 F 8: D 1 18 XFD:DO CA F 7 FF 60 RETS 1 CO 5 e 2 B PL^ LDX Cp X RTS 311 K *SFD SUDROUTVIE RAMERR RAMERR PHA LUX PTRHI LDY 8 ',X TYA ami RAMERR 4 TXA ami RAMERR 5 CLC ADC àl$ 20 RAMERR 2 STY B %Jiisw TAX RAMERR 3 -JSR RAM PLA PHA LDY #100 EOR (PTRLO) ORA ZRPGIX STA ZRPQIX PL^ RTS RAMERR 4 LDA 4100 STA BI;SW DEG RAMERR 3 RAMERR 5 SEC sec *$ 60 INY SNE RAMERR 2 SUDROUTINE RAMWT P A M,' T EOR #$FF STA (PTRLO), RAMRO CM P (RTRLO), y DNE RTS RAPIERR ' 1 y 0 y **> SUCCESSFUL ASSEMBLY: PIC ERRORS Ni LFI ru c> CO %O *à r 4. Ch Co "D Cu Ln Cf ctdâz 00 adz t Icgd awlyl I OD úOSAS Cadd omis AM ilis OOID 1 xas tl:)9 A lsiwou ZUA N 033 N 6 89 A 1.1 êlwvài 1 VGA oislwvb td 9 A Gbkjyu PAZA *UUBWVU v 3 ZA l Wblèd 9 ú 4 A DNIIJúcd 1 V 4 d i Drild sozd 419 XN 9 CGà Iw Bblu àtcâ OM Id Ai OM 849 id fflgl &%VI 400800 A 99 A d-Idt C C 4 Cd Il n Ou D LOGA Cd HD C Jtâ OIXDOIS 6 út A clsl:)Gv 699 id WDVIDV L Ido D ibdèiz 01 1 ciz 38 GA E 3 s As c 3 d A ZOSAS Z(I Jd tils oot D cxàs tagd dn 135 060 d aisikioèi U ' d ZúMkivd &V" 91 SIW Vbl VUA lalwyèd Dtri cue 3 klyd Id ZA cuè 13 ljfèj 80 L 9 oowwu LIZIA 2 HU Id 61 d Hd 0181 Nl A 3 M d OCA GWDBI te âADMSIG OCOD 1 noz GZ Dd loce Iv 9 d civ tc 9 j llsúDCV C 99 A VIDY 3 L 911 b 3 ddz o Gae ISIVIA OVZ 2 a 3 SAS z 3 ee ICSAS joue Cils OOZD ZX 33 3 D 94 MAD 135 Itoed lisl Wou ?â;j IMW Vi ld 4 â tisiwvu -q OZA 113 swvlj O 13, o auti 3 wvèî za L-l OWVèi 894 d lul(Id vc; n mdlà 3 md là N 31 cd e;OD COOOON V Ziv UUBSSIW 04 em as Asm SOOD dânoci ce Moffl imsia cl&d UMIND ZC;à MS"NB d Bda Olav 9 rro D mul Dow f Weà NDVIDY CâXe Cd Z Z 3 CA A 81 NU Sn 939 Aé, 03 SAS 03 d:i imuls BCL 4 ails OOZD X 39 ZD 19 d kloil 10 Z.L 311 CUA tlmwvu GV Cd lisl Wyd Qj 9 A 139 WVU #84 A IJII *NU 6 D 4 A w VU BtúA Oluid si ZD>Ild 981 d LAOXN #ZQÀ aw 3 w N L 19 cid COAIA 000:) cuise" OIOD awme O&OD idikib 3 AD l UISOID 860 A irie VI sèicy ziro Dg L levi Dy idoz Il BC Vd C&COOOO 18-ff I-41 IOSWAS Au 031 mos 31 avi 108 ims r O % Co M Ln cm msit 4 a A 3:d:d ICSAS ded A dmi 3 S C 60 A lno D GZDA imkivu /Az A auw 3 wvv zazd ZZN Id 90 ZA UC Ue 3 IL 4 A owyâ 29 LA *ISIWWU d 04 à CUS tc 9 à loccoe ac 9 d uu 3 DOW 9 ú 9 j Vi Dy 3 c 9 A lslwoèi Z 39 J t'imtivu (MA dimwa QZ A laina VCCA JAEXN t ZúÀ CIXD 018 à 4 v A ails cozz leviov Id OD c Wixi IGOD CCAw BOOD Oxis dd AD G . laduz 01 cas As C(ISAS IU.LSG'ID HAD 135 C? 183 kivâ eu 3 kivèl DN 1 kil a ee 3 ss 3 w klvèd t.LS Lbivd ZX 35 Mou C.LSI DOV LSIVIA cdz Z.Lti ivtd ZW 30 N 8.1 UND 1 15 Ic lits JAOIASIG owdo a O O, 'A quie 3 hid A.14 a c 3 JA CCJA 86 ( 14 ZDCA IA 4 J 6 D 4 -J IvúA 844 d et ILA CÀ 9 A 3 D 9 d IV 94 699 J 009 A Z 39 J .V& d a 9 A zc; d CICA JâJD OOID O OD 000 D y 1 1 O MAS z 3 de MAS Zoed NIA 3 X JOU UOIINOW 10 eâ effl Wye vazi S.L 3 d CD Zd 113 swyd CEZA IWVU 94 ZJ úmais 8 CZ 4 OIS LWVU tdl; i Tx 3 S t D 9 à No Mèl 689 d TISIDGY c"A als 1 klou 3 A;m adz 1 O;c limwvd ivzd IW 3 WN dt;l 0000 ON v Uà Cd HD O Dr A #116 OOP:; NDVIDY CJDD olov 99 DD sdow zir D. d Hd OIE-% GWDEI úa Mdld 61 odèdz 00 03 BAS 03 Ad 03 èdd Z 00 -JA 11 nou D ZOCA Gwkivèi BAú d cau 3 kiwo acid N Id SO Zd i 3 swvu taid oowvâ atúÀ 9191 wyu VZZA AU.LN 3 iisn 939 AIL x 3 S ZD 9 â Cnld A 3 M Rt 9 d civ cç 9 à llslwou ZAZA Id Z 3 CCA Idiffl CàGA W 31 jo N etúA IISXN 9 Z A lielwvtî c DVA cils OOCD WDVIDY ZAO:) N 310 d SCOD ouisccx OIOD Id Nui 61111 admoci ce 01 d 1 d 81 ZI 3 O Vd CCZOOO* le-Ud V-ZI ss 3 docv As 031 UOS 318 vl loa) S SOURCE FILE: MONITOR SO'L'RCE FILE: tiollj?^ SCVRCE FILIE r IOP 493 VRCE FILE M Ot J 9 C SOURCE FILE: MOPJVECT e Z- h 3 t A rlb c> Co 1 NO 1 *à 17-AFR-81 00002 e 4 PAGE i pimi-JITOR PSUEDO DM^ BLOCK NEXT OS,)ECT FILE NAME çr 7 FF: 2 F 7 FF: 3 F 7 FF: 4 F 7 FF 60 5 RETI Fa OO:E 9 01 & F 302:FO FB 7 FJ 304: E 9 01 El F 806:FO F 7 9 FSOS:E 9 01 10 F'2 ,A:90 F 3 il r P,C E 9 01 12 e 3 OEFO EF 13 ei BIO:E 9 01 14 F 312:FO ES 15 F-314:E 9 01 16 9:916:FO È 7 17 Fa IB:E 9 01 la FSI A, FO E 3 19 Ft 3 l C:E 9 01 20 F 31 E FO DF 21 Fo O:E 9 01 27 F 322:FO DO 23 FOZ 4:F 9 01 24 ra 26-FO D 7 25 F-32 E 3 E 9 01 26 e 92 A FO 03 27 cs-rc E 9 01 28 = 37 ZE FO CF 29 F,3 0-E 9 01 Fra-,2 FO CU 31 C-M,:; 4: E 9 01 32 ::J 6 FO C 7 33 cz:g E 9 01 34 F 2 ?'2 A FO C 3 35 Z-3:C Eq 01 36 r 3 DE-FO BF 37 P-3-10: E 9 01 38 F 3427 FO 28 39 F,31-4: E 9 01 40 F 346,FO 37 41 F-3-19-E 9 01 42 F 34 A:FO 83 43 FP,4 C:E 9 01 44 F 34 E:FO AF 45 FS'30:Eq rit 46 F- 52 FO AS 47 F 2 -4 E 9 01 49 F 35 &FO A 7 49 Fa'18 'F-9 rit 50 F 95 ^ FO A 3 51 arc çr 9 01 52 gr 35 E FO 9 F 53 P 93- O E 9 01 54 Fe 2 99 155 re A,4 01 56 IS MON ODJ ORO ffr 7 FF RTS sac CEG SOC CEG sec 13 EG Sac CEG s 3 c CEG SOC CEG sec 13 EC SOC CEG sec DEG sec CEG sac CEG soc 13 EU sec 13 EG sac CEG soc CEG sec CEG sac 13 EO soc 13 EO sac CEG sec CEG sac CEG s 3 c CEG sac CEG sec CEG sec CEG cac " 1 Rt T 1 RF-TI RETI à 1 RETI RETI # i RETI # 1 PET 1 #1 RIETI #1 RIETI $dit Rt TI ébl RIETI RET 1 iel RIETI i 4 l RIETI RETI # 1 PETI à Rt Ti del Rb Tl # 1 RET lit Rt- Tl et Rt Tl bal Pl-TI foi PET 1 * 1 LM fa C> c" %O 1 lb 4 1 TOR Or-266 Ir O 97 9 ?:be: Eq 01 F,3 e A:FO 93 Fabc: R 9 01 9.3 be; FO Or 11970:ú 9 O 1 F 872:FO 98 Pr S-,4 ú 9 01 F 37 à: fro 937 93,78; Elp 01 FOB 7 A:FO 83 F 37 C:E 9 01 9-3-,E:FO 02 F 3 80 E 9 Èl F-2032:F O 7 C F 894:E 9 01 F 9356:FO 78 983 B E 9 01 FSP 3 A:FO 74 g 23 c E 9 01 FPSE:FO 70 FS*O:E 9 01 F,392:FO 6 C P 9,44 E 9 01 F-396:FO 68 FB" E 9 01 F-30 A: FO 64 F 3 '-'JC: E 9 01 F,3 c E-FO 60 F?-10: 99 01 F-3 & 2 FO 5 c F? 44 E 9 01 F-346 FO 59 F 3-18 E 9 01 FO 54 c?-%C E 9 01 F-24 E-FO M Far O;E 9 01 g'-IZ 2: FO AC 93 Z 4 E 9 01 F-3 -&:FO AS F:9 ' 8: E 9 01 ir SSA-FO 44 98 L'C E 9 01 Fr-31-E PO do F:9 O E 9 01 gr-3:2 FO W j 3 C 4 E 9 01 Fsr b Fro '38 F'-7 CB E 9 01 t'-31:A'FO:34 F 3 CC E 9 01 r-3 r E FO '30 CDO E 9 01 Ir ZC 2 Fo - c F-D 4 E 9 01 PBUCDC DMA OLOCK 57 BEC 58 sec 59 ego 513 C 61 13 EO 62 sec 63 ego 64 soc 63 SEO 66 SDC 67 BEC 69 soc 69 13 EO sec 71 RET 3 SEO 72 SOC 73 BEC 74 soc BEC 76 S 2 c 7 '/ BEC 78 suc 79 SEO SBC si BEC 82 913 C 83 DEG 84 Esc SEO 96 snc 87 BEC es SDC 09 DEO si 3 c 91 BEC 92 snc 93 SEO 94 si 3 c *BEC 96 513 c 97 13 EO 98 sec 99 13 EO suc 101 DEQ 102 SOC 103 13 EO 104 suc DEG 106 SIX 107 DEG 109 suc loci BEC sac lit BEQ 112 sec 17-APR-81 #000234 PAGE 2 RETI RETI REI 1 r OETI REI t RE 1 1 R Er 3 #1 RET 2 RET 2 RET 2 Rt T 2 r E'r 2 R Et 2 #1 RET 2 #1 RET 2 #1 RET 2 âj PET 2 RET 2 RET 2 R Ei 2 PET 2 RET 2 RET 2 RET 2 R Ei 2 Ru r 2 RE 12 tel r ET 2 a 1 r%) Ln c> Co % O PSUEDO DMA GLOCK 17-APR-81 #000254 PAGE; 3 1 1 4 lis 11.4 1.19 1:)4 RETZ DEG SBC DEC sec CEG soc DEG suc CEG soc CEG SBC CEG sec CEG SOC DEG sec DEG suc CEG RTS CHN RET 2 # 1 Rt T 2 RETZ #1 RET 2 MI RETZ RETZ et RETZ RETZ RETZ RETZ #1 RET 2 F 9 D 6 FO 29 F 93 CS E 9 01 F 3 DA FO 24 FSOC:ú 9 01 r SDE:FO 20 Fr BEO:ú 9 01 lre E 2: PO SC F% 3 E 4: F 9 01 F 956;FO 18 F,3 EB:E 9 01 v Làe A:FO 14 rag ME 9 01 PSEE FO 10 FI Biro: E 9 01 Fee 2:FO OC FSP'4: E 9 01 F 3 F 6:90 08 FSFB:E 9 01 FSPA:FO 04 FBME 9 01 9-OF Er FO 00 F 900:60 FIPOI: r 1 Q %A m CD %a "Id F 901: F 901: O j 1,8: F OI: 0,'l B: 0059: OOSA: ' : oi.,lc: OD 50: 00 ic: F: O-D&O: 0061, 0064: : 0066: 0067: 0068: 0069: 00,5 A: z oor'c: : 0071: 01172: o D 72: 0074: : 0076- 0077- 00793: 0079 007 A: C 07 D: 007 C- 007 D: 007 E: ocp M colo. F 901 o 3 c'e: F 479 Fb 99 Fd EE. 0 f., 10 ooai 0 92 SARA MONITOR CRNLOC # *LMARGIN *RMARGIN e WINTOP 9 Wi No Tm cm il cv 12 SA 54 L 13 BA 54 M 14 BASSL BASSH là TBA 54 L 17 TBA 54 H 18 TBASGL 19 TBASSH FORGND 21 DKGND 22 MODE$ 22 CURSOR 24 STACK PROMPT 2 é TEMPX 27 TEMPY 28 CSWL 29 CSWH KSWL 31 KSWH 32 FCL 33 PCH 34 AIL AIH 36 A 2 L 37 A 2 H 33 A 3 L 39 A 3 H A 4 L 41 A 4 H 42 STATE 42 YSAV 44 INBUR TEMP 46 MASK 47 * 413 KZID 49 K 13 DSTRG * 51 USERADR 32 GLOCKIO 53 RECON 54 DIAGN INOUFLEN 56 ISSLOT 57 ISORVN 17-APA-91 4000254 PAGE 4 ECU ECU EGU ECU ECU ECU ECU ECU Eau EOU ECU ECU ECU EQU ECU ECU Eau EGU ECU EOU ECU ECU ECU Eau EGVJ cou ECU EOU ECU EOU EOU EQU ECU EGIJ ECU ECU ECU EOU ECU Eau ECU ECU ECU ECU ECU ECU ECU Eau EW ECU EQU $ce SCRNLOC SCRNLOC+l SCRNLOC+ 2 SCRNLOC-b 2 SCRNLOC+ 4 SCRNLOC* 5 SCRNLOC+ 6 SCRNLDC+ 7 SCRNLOC+S SCRNLOC+ 9 SCRNLOC+t A SCRNLOC+ 60 SCRNLOC+SC SCRNLDC+$D SCRNLDC+*E SCRNLOC+&F SCRNL Ud'+ 010 SCRNLOC+ 811 SCRNLOC+* 12 SCRNLOC+ 913 SCRNLCC+$ 14 SCPNLOC 4415 SCRNLOC+$ 16 SCRNLCC+ 817 SCRNLOC+$ 18 SCRNLOC+$ 19 SCRNLOC+SIA SCRNLOC+ 010 SCRNLOC+IIC AIL 41 AIL+ 2 AIL+ 3 AIL+ 4 AIL+ 5 AIL+à AIL+ 7 AIL+ 8 AIL+ 9 AIL+"A Ai L*$C CUCSOR 16 COOO, tcolo " 2 FB OF 479 OF 689 t F 4 EE est ISS Lgt+l & AND $ O m tir 9 %) c> Co % O AU OP 12/20/79 j Of 4 LY 80 BYTES t$ 3 AO-3 úF) 17-APR-81 #000254 PAGE SARA MONITOR 58 lesurp 59 IBCMD * 61 ENTRY MON 67 MONZ 6 E 3 72 SCAN 72 NXTINP 76 CMDSRCH si 93 * 84 CETNUM 97 NXTCHR se DIGIT NXTOIT NXTOAS ti O NX Tn 52 Ili ims 3: F-7 i 1: F 901: DA F 91:-2:86 6 A orcr-4: Fq-D 4: De F 705:20 3 A FC r Q Ds Aâ 6 A F 2; O ^ 9 A FQ 8:A 9 OF F l MID: C 35 68 Fl;':F:20 D 5 FC F-712:20 67 F 9 F 9 i 5:20 2 C F 9 F 919-84 70 F 91 A:AO Il F 91 C:88 F'41 D:20 E 5 F If IF:D 9 6 C F 9 F 92,2:1)0 Fe F 924:20 5 E F 9 F'927: A 4 70 F? 29:4 C t 5 F 9 F 92 C; F'JZC:A 2 00 F,7 ZE:eâ 76 F'420: 96 77 F'-732 91 7 E F 9,24: Cla F'435: 49 130 FJ 31: C 9 OA >O 06 F 7 0769 88 F 9 1 D:C 9 FAF'J F: '40 ZA F 941: A 2 03 F'J 43 OA F:; 44: QA F 945:OA F 946:OA Fe 47:OA 9 ? 48:26 76 Fr 9-IA: 26 77 F-7-;C: CA F' 4 D: 10 Fa 99-IF:A 5 7 C F 9,51:00 rjà F 153 D 5 77 F 915:95 75 F'J 1-7 ':> 5 79 67 -J 59 E 93 F"A FO fr 3 e= 1 C 00 D 4 P:?Ie EQU EOU EOU TSX SIX CLO JSR LDX TXS LDA STA JSR JSR SR STY LDY DEY DMI CMP UNE JSR LDY imp LDX STX STX LDA INY EOR cmp Bcc AOC CMP acc LOX ASL ASL ASL ASL ASL POL ROL DEX OPL LOA DNE L DA STA STA INX DEI GNE IBSLOT+ 4 IDSLOT+ 6 STACK i MNST DE HEX MODE i RESTORE STACK TO ORICINAL LOCATICN t PROMPT (APPLE) FOR SARA MONITOR j GET A LINE 09 INPUT i S Er RECULAR SCAN j ATTEMPT TO READ MEX BYTE i STORE CURRENT INPUT POINTER j 17 COMMANDS j OIVE UP IF UNRECOGNIZABLE FOUPID? j NO KEEP LOOK ING. PERFORM FUNCTION *i CET NEXT POINTER 00 NEXT COMMAND ir LEAR ^ 2 BUMR INDFX FOR NEXT TIME. i TEST FOR DIGIT i SAVE IT IF 1-9 TEST FOR HEX A-F i SHIFT HEX DIGIT$ INTO A 2 i SHIFTED ALL YET> JIF ZERO t HEN COPY TO A 1 3 DELL STACK #'à OF Pm OMPT GETLNZ ZSTATE CETNUM YSAV #111 MON Cr- DTAB, Y CMDSRCH TOSUD YSAV NXTINP $io A:21 A 2 H (INDUF), Y DIGIT lilas "$FA DIGRET #3 A A A A A AVL A:P; 4 r IXTOIT STATE rqx TD 52 AZR, x AIHI x A:3 H X M)TOAS r 4 x Tc HR N) Ln roi c> Co % O - -4 17-APR-81 #000234 PAGE & i FUSH ADORESS OR FUNCTION i AND RETURN TO IT. PASS MODE VIA ^CC. i RESET $TATE OF SCAN 0 m Q O (CALL) SUBROUTINE j -JUMP (CCNT) PROGRAM M -MOVE MEMORY R -READ DISK BLOCK U -USER FUNCTION V -VERIFY MEMORY BLOCKS W -WRITE DISK BLOCK X a REPEAT LINE OF COMMANDS SP -SPACE (BYTE SEPARATOR) -ASCII (HI BIT ON) -ASCII (HI BIT OFF) -SET STORE MODE -RANGE SEPARATOR -COMMAND SEPARATOR -DEST/SOURCE SEPARATOR CR "CARRAGE RETURN BARA MOMTOR 114 TOSUD il$ 119 ZZT Ar E 121 DIGRET 122 * 123 CMDTA 8 % 28 141 CMDVEC 1 > 8 NXTAA 163 NXTAI 1 oB TSTAI ^ 9 FA Fq% 1:89 7 C F 9 F?â 4 4 B cri à 5: ^ 3 7 c P 967- ^O 00 F.fb 9:134 7 C > 94 re: 60 F,46 C: F &C: F-7 ,C: 00 FqéD: C-3 F 9 àE:06 F.7 >F;EB F 970:EE F 971:EF F 9 ',2:FO P 973:Ft F 974:99 F 975:98 F 976:AO F 977:03 F 978:A 7 F-7 /9: ^ 13 F 97 A:95 Fç ê 13: C 6 F-77 C: F* 7 C. F 97 C:7 C F'7-D: 7 A 997 E:211 V'47 F DF F-7 CO 77 = 191 DA F 4 e 4 A 3 FE 15: 06 Fqc Blà: 08 F'B 7: 07 F 9 PE 3: 87 P-4 r:sg 99 rq,* 3 A: 90 "en; 25 F PC: F',? 8 C F 9,r E 6 7 A F'"BE DO 02 F-7 z O E 6 73 F 902 ú 6 74 9 ':P'44 DO 05 'QQ 6-E 6 75 r 9 qi 3 la 00 " FO 10 0 *-àD A 5 74 F 7.:o;a LDA PHA LDA PHA LDA LOY STY RTS EOU DFB OFS DFB OFB OFS OF 13 DFB OFS OFB DFB DFB DFB DFB DFO OFB DFB EGU DFO DFD DFB DFO DFO DFO DF 3 DFD Ope DFO DFB DFO DFB DFO DFB OFB 1 NC 13 PIE INC INC ONE ENC. SEC 13 EO LDA SEC "ASC 1 1 CM(IVEC, Y STATE STATE C 6 $te SEF. $E> *FO t Fl $ 99 t 9 s f Ao $ 9 j SA 7 $AS $ 95 $C 6 00-1 ju.:R-l MOVE-I READ-1 U Z E R 1 VRFY-l URTE-1 REPEAY-1 SPCE-1 ASC 1 1-1 ASCIIO-1 SETMODE-1 SETMODE-1 SEP-1 DEST-t CRION-1 i 13 VMP 16 DIT POINTERS A 4 t. rix TAI A 4 H Alt. TSTAI AIM REYAL ^IL é 3 UMP At à IN CASE OF ROLL OVER TEST AI>AZ ru Ln r%) c> Co %a 1-4 17-APR-81 #000254 PAQE j F AI LESS THAN OR EQUAL TO A 2 &THEN CARRY CLEAR ON RETURN. i SAVE LOW NIEDLE SHIFT HI NIDDLE TO PRINT. i STRIM Mi NICOLE MAKE IT NUMERIC la IT > 19, i M,%KE IT 'AI-'FI &PRINT A COLON 3 RANCH ALWAYS ANTIC IPATE i TF-sr FOR 90 èTEST FOR NEW PC Mo q A F-79 E:E 5 76 F'4 AO:35 80 F 12 A 2: A 5 75 F 9 A 4 E 5 77 F 9 A 6:05 80 F 9 A 9:DO 01 F 9 ^^:18 F 949:60 F 9 AC: F 9 AC: F 9 AC: 413 "AD: 4 A FIAE: 4 A r 94 F:4 A "DO: 4 A F-?' 1:20 87 F 9 F'404 68 F'4 D 5:29 09 F 907:09 80 F 9 D 9:c 9 DA F 929 90 02 F-73 D,69 06 F% 1 'F:4 C 25 FC FQC 2: F-IC 2:20 AC F 9 A 9 DA F 9, '7: DO F 6 FZ( 9. F 919 A 9 07 F-7 ' 8:24 68 r,*e D 50 02 Fe IF A 9 OF FI Dl 95 69 FZ 03: 60 F-7 Z 4. 9 '9 'j 4: 8 A F':PD 5: FO 07 F-'; 07:135 74 9 ','rj 9: 95 72 99 CO: CA 9 ':PDC: 10 F 9 F 90 E:60 99 DF: F-rj F: 135 69 PQ_I;A 4 7 D 9:';'E 3 B 17 E :?E 5; E 6 7 D :rr7AO OO e ME 9 C 9 A 2 Fe Ea:oo 05 ZED'A 5 69 e 1 PEF 1 O 20 mi;Fl &O e'392 C 9 A 7 ".9:4 DO 05 SARA MONITOR 177 RETAI * 179 * PROYTE lai 197 PRHEX i 9 B PRHEXZ 192 PRHEX 2 193 * 194 PR 8 YCOL * 196 PRCOLON 199 TSYSOWID 202 SVMASK 206 AIPC 212 OLDPC 213 * 214 ASCITI 215 ASCI 12 Z 24 ASCI 13 sec STA LDA sec CRA RUE CLC RTS PHA APL F E PIP AIH AI.H TEMP R Ei Ai LSR A LSR A LSR A LSR A JSR PRHEXZ PLA AND * 110 F ORA #$DO CMP #$BA BCC PRMEX 2 ADC *$ 6 IMP COUT JSR PROYTE LDA #t BA ONE PRHEX 2 LDA #7 BIT il ODES OVC S Ve:ASK LDA 061 F STA MIASK RTS : TXA 13 EO LDA STA DEX OPL RTS STA LDY LDA 1 NC LDY c rip 13 NE LDA OFL RTS cm P De 4 E CLDPC AIL, X PCL, X Alpel MASK YSAV (INBUF) y YSAV mt:% 2 AS,: 1 IJ MASK 3 ITON JèSA 7 CRCHK SAVE MI DIT STATUS ih OVE ASCII TO MEMORY *DUMP FOR Ne XT THI>J(;. àASCII 1 t'OPE CONTINUE. HE'S CHANGEO MODES NO, HE'S DOPIE. A:ictl, ? ibi D TEST FOR EOL. r% 3 LA VQ c> Co % O - SARA MONITOR 229 CRCHK 234 ASCOONE 235 * 226 ASCII 238 ASCIZO 239 CKMDE 243 BITON 245 SITOFF 247 REPEAT 250 REPEATI 235 CRMON 258 MOVE 260 MOVNXY Z 66 267 VRFY 269 VRFYI 274 VRFYZ 27 B MISMATCH 17-ARR-81 #000254 PAGE 8 p 11 j 96 A 5 69 F 9 FS: 30 10 F 9 FA: 60 F O'B: C 9 9 D F 99 '0:FO 07 F'*FF: 25 69 Pl-% 01: 20 Ar PA p,.%z 4: 00 De F-NOà: 60 OVA 07- PA 07: 2 e FAC'S qo gaffe: 113 PA-DA AA FA 00:96 7 C FAOD:49 DA FACF:00 70 FAII:A 9 FF FA 13:DO CA PA 15:A 9 7 F PA 17:10 Cà PA 19:2 c 00 Co FA IcIO 03 FAIE:4 C OF FD FAVI; 69 OAZ 2:69 FA 23:4 c 12 F 9 c A.26- FA 26: FA:'6:20 AO FA e AZ 9:4 C 08 F 9 FA 2 c; 9 A.-C 20 'D 99 e&ZF; 30 50 FADI: Dl 74 FA',3:91 7 A Fà, '5: 20 BC F 9 rr ADS: 90 FI FA:,A:60 FA_- D. p An D :ADD 20 90 F 9 FA"E 80 4 E FAZE 1, 74 FA 42;D 1 7 A FA 44;FO 06 r 4-16 '20 '52 FA FA 49 20 EF FC FA 4 C 'O 8 C F 9 FA 4 F 90 EF FA 51:60 PA 52; r.A 52 A 5 78 F^ 14: 20 Ac F 9 f A 57 A 5 7 A g Ar 9:20 CZ FIP LOA MASK omi 5 1 TOFF RTS cmp #180 DEO ASCDONE AND M-ASK -JSR STORI ONE ASCI 12 RTS SEC Dra 990 CLC TAX STX STATE EOR #$DA SNE CRROR LDA #t FF Bcs ASCIII LDA *b 7 F OPL ASCIII DIT 413 D SPL Rt PEATI Omp KEY IN PLA PLA U.%IP SCAN JSR 3 LI imp tlm: Iz JSR TSTAI 13 CS CRROR LDA (AIL) Y STA (A 4 L) Y JSR NXTA 4 OCC MOVNXT RTS JSR TSTAI DCS ERROR LDA (AIL),Y cmp (A 4 L) Y DEO VRFY 2 JSR MISMATCH JSR CROUT JSR NXTA 4 DCC ,RF Yj RTS LDA Affl isq PROYTE LDA A 4 L j SR PROYCOL i CHANCE MODES. END OF LINE? i YES, FINISHED ica STORE lyl i DO NEXT. à IPIDICATE MI ON. i(DCC NEVER TAKEN) INDICATE HI OFF i SAVE BT^TE i RETAIN STATE )ARE WE IN STORE MODE? &SET MI BIT UNMASKED i MASK HI BIT j ALWAYS i REPEAT UNTIL KEYPRESS JCLEAN UR STACK D i DONIT Mo Vk ANYTHINQ 19 ILLEGAL INPUT. j?'OVE A BYTE 3 UMP BOTH AI AND A 4 JALL DONE WITH MOVE JTEST VALID RANCE ICOMPARE BYTE FOR BYTE MATCH? YES, DO NEXT. PRI>n BOTH BYTES j OOTO NEWLINE SUMP BOTH AI AND A 4. j VER 1 py DONE. i PRINY ADDRE 53 Or A 4 i OUTPUT A COLMI FOR SEPARAYOR Ln rla C) c" NO % 4 r I.G 149 A SARA MONITOR 17-APR-81 #000254 PAGE 9 i AND THE DATA i PRINT THE BYTE AND ^ SPACE ILEAD WITH A SPACE. JOUTRUT ADMESS Al i SEPARA Ti E WITH A COLEN IPRINT BYTE POINTED TO SY AI JPRINT A SPACE JEND VI^ OUTPUT ROUTINE. JLEAVE STACY WITH NOTHIN, ON IT. STUFF PROGRAM COUNTER I-JUMP TO USER PROQ. i PRINT ERROR HUMBER i PRINT THE OFFENDER i FOLLMJED DY ^ 1- 1 OUTPUT A CARRAGE R El URN (NO STOPLST) s COPY A 2 TO A 4 FOR DESTINATI Oti OP. i SEPARAI-OR TEST STORE MODE OR DUMP. i ZERO MODE. BRANCH ALWAYS TEST FOR NO LINE. IF NO LINE, CIVEM A ROW OF BYTES 1 r EST IF APTER ANOTHER SPACE i STORE MODE? 19 EEP IT IN STORE STATE. &CET BYTE TG OF STORED. J PUT 1 T IN MEMORY. e SUMP POINTER i AISO USED FOR 'O" Tg CLEAR MODE USE INPUT CHARACTER i TO SET MODE. 294 PRINTAI 2 86 2 f 37 2 es 289 FR Al BYTE 290 PRBYTSP 291 PRSPC 294 USER 295 * 296 JUMP 299 00 2 " 301 RWERROR 305 ERROR 2 306 ERROR 307 * 308 DEST 314 SEP :31 ék 318 OLI 320 SPCE 324 STOR 326 STORI 330 DUMMY 331 * 332 SETMODE 3:34 335 SETMDZ LDA JSR JSR LDA JSR LOA JSR LDA )SR LD^ "IP imp PL^ PLA )SR limp EOU JSR LDA JSR JSR imp LDA STA LVA STA Rr S ( 44 L), Y RRBYTSP PRSPC AIH PROYTE AIL PROYCOL (AIL) y PRUYTE # $ %O COUT USERADR AIFC (PCL) O. PRBYTE ^ 1 COIJT VOSTOP MON A-IL A 4 L A.-H A 4; 4 FA 3 c: al 7 A fr ACE-20 70 FA eab I-20 73 FA gr.%e,4: A 5 75 FA& 6:20 AC F 9 gr A 69: A 5 74 F Ae,0:20 C 2 F 9 946 E:31 74 FA-70:20 AC F 9 g A 73:A 9 AO FA 75:4 C 25 FC F^ 78, FA 78:4 C FB 03 FA 7 B, FA 7 B:68 FA 7 C 68 FA 71) 20 D 4 F 9 FABO:âC 72 00 FAI 32: FA 33: FA 33:20 AC F 9 FA 936: A 9 Al FA 8 B 2 O 25 FC e Aa B-20 07 FO F.%PE 4 C 04 F 9 F 1 A 5 76 97493: P,5 7 A FA',,5 A 5 77 FA 97: 035 78 9 A 99 60 FAOA. A 4 FA FA*D: 9 B FAE 90 10 FAAO FA.;O C 6 70 FAA 2 FO 4 e CA c'A 45: DO 16 FA 47 C 9 SA e AA 9 Do 413 F"l 3 B 5 7 C FAAD:A 5 76 F-%,F:91 7 B FA 91: E 6 78 :AD 3 DO 02 FAZ 5 E 6 79 r.%Z 7: 60 FAZB; FA%e ^ 4 70 FADA'BG *FADDDI 7 E F Al D%j 3 7 C çr Arj F 60 FACO: JSR ERCE TYA DEG s FTMDZ DEC DEG DEX SNE CMP ONE STA LOA STA INC ONE INC RTS LDY DEY LDA STA RTS YSAV rtulffle SETMOZ #IBA TSTDUMP ST Ar E A:2 L (A 3 L),Y A: 1- ru,,Imy ADH ru c> CX) % O -141 Y-AV ( Ir IBUF) 1 y STATE FAC 2: 2 C F^t'3: A 9 02 FAC 5 85 97 FAMAS 74 FAC 9:85 83 r Acs:^ 3 75 FACD, Oo 96 PACM Ab 78 FADI:A 5 7 A FAO 3 79 FA 04:210 79 P 4 F An 7,80 AA FA 09:E 6 7 A PADU:00 02 FAOD:ú 6 79 FADF:E 6 75 FAEI:Eà 75 FAE 3:20 98 P 9 FAE 6 90 OF FAES: 60 FAE 9: Pr Ap-9: FAE 9: FAE 9 A 5 75 PAE 2:85 77 FAED:20 cq F 9 Ft-9 '0: 05 74 FAF 2:85 76 e AF 4:DO 06 AI:6; FA 9:6 4 A FA Fr 7, 80 95 FA;:9 20 C 9 F 9 w Ac CA 5 74 FAçr E:e 5 7 A FGOO:A 5 75 F 802:135 78 F" 4 20 98 F 9 FD 07:DO EE F 009:20 6 L PA FBOC 20 92 F 9 FOOF:60 10 F 8 tl A 5 74 F 8 13 23 69 F 315:D O 05 F 817:20 21 FO F 31 A:00 ED FBIC-20 6 E FA FOIF:00 EU '321: FB 21,A 5 7 A F 1323 i 95 74 93 Z 5 A 5 719 FU 27 B 5 75 F 2 z 9:20 72 FA 17-APR-81 #000254 PAGE t O i BE 1 DISK COMMAND TC READ Dmmy arr TC s Kip 2 BYTES i SET DISK C Orl M At 4 D TO WRITE JCOMMAND FORMAT IS i BLOCKNUMBER INC INTERUPTS WHILE IN MONITOR i DO DISKO FEVER. JOIVE UP IF ERROR ENCOUNTERED JBUMP BLOCK NUMBER &BUMP RAM ADDRESS BY 512 BYTES i TEST r-OR FINISMED. &NOT DONE, DO NEXT BLOCK i CUTPUT 1 ROW Or BYTES CET wi DTH Pl ASK IN Ta Acc i DRANCH ALWAYS i LIUMP? ISET FOR CITHER 80 OR 40 COLUMN 3 $USE AI FOR ASCIZ fflir i TEST FOR VA Lr D RANGE 9 PRINT ADDRESS AND FIRSr BYTE $END WITH ASCII i TILST END OF LINE j FOR 40/80 COLUMN 48 RANCH ALWAYS PRI Nr NEXT BYTE AND A SPACE JALWAYS (^CC JUST PULLED AS $AO) i RESET TO DEGI Nr NQ OF LINú àPRINT AN EXTRA SPACE ' LUA Pro LDA VA LOA STA LDA $TA LUX LDA SEZ JSR sce INC UNE INC INC INC JSR 13 cc R Ts CHN EOU LDA STA JSR ORA STA VIE LSR scs JSR LDA Sr A LOA STA isn 13 CS JSR JSR acs LOA AND UNE JSR UNE JSR DNE LDA STA LDA STA lisq 1 OCMO AIL isouirm AIH IDDUFP+t A 4 H AIL BLOCKIO R Wt RROR AIL. NOVER MH AIH AIM TSTAI Rk.LOOP 11 ON 913 AIH A 2 H TSTSOWID AIL AP-L DU.1,RO A ERROR TSTSOWID AIL AIL AIH A 4 M TSTAI t:RRORI PRIPITAI NXT Ai AIL 1 MA SK CUMP 3 Du.-IPASC W 1111 P 1 r RAIBYTE Dulli P 2 AIL AIL A 4 H AIH PRSPC SÀRA MONITOR 238 Ri A 340 WRTE 341 SAVCMO 342 RWLOOP 354 NOVER 1 DUMPS a* 9 TSTDUMP ERRORI il Dump 12 DUMPO le DUM Pl 19 DUMP 2 26 DUMP 3 2-P DUMPASC M) Ln r-11 c> Co %a - 1 * 4 17-APR-81 #000234 PAGE Il i TO INDEX MEMORY INDIRECT i SET NORMAL VIDEC JTEST FOR CONTROL CHARACTERS j CK TU PRINT NON CONTROLS s OTHERWISE PRIIIJT A SPACE. JPUT IT OVT j OUMP BOTH AI AND A 4 FINISHED. i TEST END OF LINE. JNOT DONS, PRINT NEXT i INDICATE 80 COLUMNS DESIRED J 90 TO 80 COLUMN MODE &BRANCH ALWAYS JINDICATE 40 COLUMNS DESIRED COTO 40 COLUMN MODE JASSUME 80 AND DRANCH IF IT IS 3 VT FIX FOR 40 IF NOT, il SOLATE DIT 7 Ji DIT 7 SETS NORMAL/INVERSE) JACAIN A Sti UMES BO COLUMNS el F NOT, SET FOR/13 ACKGROUPJD COLOR JSET CURSOR TO TOP LEFT OF WINDOW JNOW DROP IPÀTO CLEAR END OF PACE SAVE CURRENT CURSOR POSITION SARA MONITOR F 32 C:AO 00 FZ" 2 E:01 74 FZZ-0:09 80 Fri-I ": C 9 ^O FD:,4:DO 02 Focà:^v AE F 13 B: 20 25 FC FDDD:20 BC F 9 Fn E:LO 06 F 240: A 5 74 F 1342: 25 69 FU 44:1 > O E 6 FB-16- 4 C EF FC F 349: F 349: F 849. F 3 9:313 PB-t^:AD 53 CO FBJD- 80 04 F 3-:F: F 3-IF,19 FC'l O; AD 52 CO F 353 A 5 69 FB 15 09 40 FB 17:30 02 F 3159:29 OF FD 5 D:85 68 F Dn D:09 7 F Frie F: 29 AO F 361:035 66 F 3 t 3:3 O 02 C:rb 5 A 9 FO 91 b 7; $ 35 67 F 34,9: 9,31,q: AS 58 FZZII-85 ',C gr 2 mt 0: A 5 5 A F 3 úF 85 50 F 371; F 371:A 5 3 C F 273:49 FB 74:A 5 3 D FJ 76 48 F 377:20 81 FU -ri 7 A: 20 BE FD Fil ID: A 5 Se FZ)7 F 95 5 C :Zl 1 7 20 C 9 FU ir ZE 4 90 F 4 Fq 616 B F-P,7 AS FEB 69 FDP 9 a 5 5 c F:C-2 c DO 23 FL 7 z E 34 ASC 1 3 5 :39 ASC 2 46 ASC 3 47 * 48 * 49 * COLGO 54 COL 40 56 SETSO SETBOA 66 SETBOB 67 * 68 CLSCRN 73 CLEOP 78 CLEO Pl si e 4 LOY LDA OR^ CMP 13 CS LDA )SR JSR SCÉ LDA AND UNE imp SEC LDA scs CLC #0 (AIL) Y #880 #s Ao ASC 2 #SAE COUT NXTA 4 Asca AIL r-ASK ASC 1 CROUT *C 053 SET 80 LDA SC 032 LDA KODES DRA #$ 40 OCS SET 80 A AND #*OF STA MODES DRA 437 F AND #0 AO STA FORGNO OCS SETSOO LDA #IFO STA OKOND LVA LMARGIN STA CH LDA WINTOP Sr A cv > 1 LDA PHA LDA PHA JSR JER LDA STA isp OCC PLA TAY PLA STA TYA 13 CS CH Cv SEICV CCEOL Liifffl IN CH Cur IDOWN CLFO Pl j CLEAR TC END OF PIRST L INC ie.OTO NEXT LUNE r 1 Q Ln rla c> CO 1 %a 1 1-4 RESTORE CURSOR POSITION ('ET OL O CV 1 N ACC AGA 1 N àBRANCH ALWAYS CH EETCV 17-APR-Si #000254 PAGE 12 rli% 7 98 SARA MONITOR j CLEAR TO END 09 LINE FIRST' j 1 F INVERSE j 1 F CARR^QE RETURN THEN NEW LINE. j FIR Sr CLEAR TO THE END OF THIS LINú &RESET CURBOR AND COTO NEXT LINú (C^RRY 19 ffl) i THEN OOTO THE NEXT LINZ. éTEST FOR TOP OF SCREEM j ANTICIPATE 'MOT, TOP j IT'S NOT TOP, CONTINUE. i 14 t'AP AROVND TC BOTYOM j OCCREMENT DY ONE j 5 ^VE NEW VERTICAL LINE ir.FIT VALUES FOR FIRST PAGE ($ 400) &ALWAYS i TEST FOR 80 OR 40 BUMP CUROSR HORIZONTAL j Tt ST FOR NEW LINE &JUST IN CASE WE HAVE, j CURSOR AT START OF NEXT LINE MOVE CVRSOR DOWN ONE LINE A?:TICIPATE NOT BOTTOM i TEST FOR BOTTOM SRANCH ALWAYS j 3 ACKSPACE? i TEST FOR PORIY OR EIGHTY MODE *à TEST FOR WRAP AROVND FO-39: AS SC 09090: AC 89 PC F 093; fr B 13: C 9 130 F 195: 90 63 F 89 ?:C 9 90 F 099: DO 3 A iroqs: 20 s E F$ xcog:, >e C 3 IV 15 MOA 1: 4 C 02 PC FBA 4- FBA 4: FOA 4:A 5 5 D 93 A 6:Cb 5 D F 0,48: C 5 3 A FDAA:DO 02 PIDAC: ^ 5 50 FD.%E 393 FBAF E 9 01 FBBI 135 5 D FDD 3: F 333: FBZ 3:A 5 SD FB 25:10 4 E FB*'7: PZZ 7:24 69 FOD 9:70 02 FBED:E 6 5 C F 82 D;E 6 5 c FB' F:A 5 5 C FGl:c 5 59 rur 3:95 te Far 5 90 5 D FE.- 7:65 5 C FDC 9: FDC 9: 92 C 9: E 6 5 D FCCD:A 5 5 D Fnc D:c 5 50 F Ol 'F 90 E 2 FDDI:A 5 5 A F 303:80 DC F 3 rj 5, F 3 DS:C 9 88 FDD 7,DO 50 FD'4,9: 24 68 FSZB:70 02 FODD:C 6 5 C F 30 F:C 6 5 C FOEI:30 06 FDEZ:^ 5 5 C 9 ',SE 5: C 3 " FDE 7:10 39 FOF-9:20 ^ 4 Fû EC ^ 5 59 FDEE:85 5 c 4 ? 1 93 CONTROL TOTCR 97 CARR^ 09 * loi * 102 CURUP 107 CURU Pl 109 SETCV BASCALC Ili CURDNI CURIGHT 118 RIGHTI 121 SETCHZ 123 SETCVH 124 *DROP Il * 126 CURDOWN 133 TOTBACK CURLEFT 13 & 128 LEFT 80 143 LEFTUR LOA JMP CMP OCC CMP ONE jsjq j SR JMP CH CLEOLA #tso DISPLAYX TSTBACK CL Or OL BETCHZ NXTLIN YTO LDA Cv DEC Cv CMP ti 1 PITOP ONE Ct r, UR 1 LDA Wljs Tm SEC sec O * 1 STA Cv EGU EOU LDA Cv BRL BASCALCI DIT MODES OVS RIGHTI INC CH INC CH LDA CH Cpip RM-%Rglèi LDA HARGIN DCC CTRLRET STA CH CURDOWN FOR WRAP AROUND INC Cv LDA Cv CMP Wlèl BT Pl BCC CURDNI LDA ti 1 NTOP DCS SETCV C MR DUE DIT avs DEC DEC 13 M 1 LVA Cmp OPL JSR LDA St A #1813 TSTBELL MODES LE Or TI 30 CH CH Lt FTUP CH LI"RQIN CTRLRET Cu 4 up RMARQIN CH N ui ra c> CD %O - Nd SAVE NEW CURSOR ROSI (ION. tnir 98 SARA MONITOR 17-APR-81 #000254 PAGE 12 i 3 RA NlH ALWAYS Jt S IT CONTROL CHARACTER r EST FOR INVERSE i Na PUT IT OUT is TRIP mi BIT i MOVE CURSOR RIGHT IT'S B Or TOM, *ESET CH"O AND SCROLA. JRESET CH ONLY CAIC BASE ADR IN BA 54 LH $FOR GIVEN LINE NO. J OC-LINE NO JARQ-OOOABCDE, CENERATE i BA 54 H"OOOOOICD A'ND i DA 54 L-EABAOOOO i SAME FOR PAGE 2 i SAVE CHARACTER i NORMALLY COUTI i DELL? j NO TEST FOR FORM FE En. t 47 148 COUT 2 153 DISPLAYX 154 * INCHORZ 156 NXTLIN i 57 1 '.9 BASCALCI 16 B 171 OSCLC 2 17/ 17 B CTRLRET 179 * COUT loi les 189 COUTI * 191 T St BELL 194 BELL 196 BELLI 197 BELL 2 199 DELL 3 DNE Cmp DCC DIT omi ^-lin JSR JSR ses RTS PHP PH^ LSR AND OR^ STA EOR STA PLA AND sec ADC STA ASL ASL DRA STA STA PLR RTS PHA STY STX JSR LDY LDX PLA RTS JMP CMP DNE LDX TXA TAY DIT DEU a 1 Ir 13 PIE DEY CUXLEFT *f AC, CCNTROL MODES DISPLAYX 437 F DISPLAY CU 41 CHT SCROLL FSFO:00 E 7 fr 3 r 2: Fse,2: C 9 ^O 9 OF 4:90 9 D FDF 6:24 69 FDFB:30 02 FDFA: 2-P 7 F F'3 FC:20 9 D FC FOFF: FU F 20 87 FB F '02:30 57 PC 04-60 FC 05: FC 05:09 FC 06:40 FC 07:4 ^ pces:29 03 FCO^-09 04 FCOC:B 5 5 F F Ctl E:49 OC FCIO:85 61 FCI 2 -68 FC 13:29 18 PC 35:90 02 F-.17:69 7 F PC 19-95 5 E F.: 1 8 OA FCIC OA F(,ID 05 5 E FCIF-85 ',E FC 21:85 60 MC 23:29 FC.24,60 FC 25- FZZ 5-48 F 1.26 54 60 FC; 8 86 6 C Fc ZA: 20 32 Fc PC 2 D:A 4 6 D FC 'F:A 6 6 C FC 31:69 9 'C:32: 60 FC 33: FCZ 3,6 c 6 E 00 FC 26: pt,:6: C 9 137 FC.'9-DO 113 F,: l'A: F:':)A: A 2 10 Fr::C:e A FCZID, Aa F-,"Er 2 C DO FF FC 41 FO FD rr-:'3 'ZC DEI FF FC-:-6 DO FO Fe.JS:P B A #103 #804 DA 94 H #te DASSH ** 18 SECLC 2 * 87 F DA 94 L A A BA 54 L BA 54 L BASSL Tt-IIPY TE tl P x CCVTI TEMPY TEMP X (CSWL) Lf> O ##Io t Fs DE 3 DRELL 2 t FF 08 B r L L 3 rl*) fil ru C> Co % O 1 17-APR-01 #000254 PACE 14 fic 1 91) WA MONITOR FC-tv: 00 F 3 FC.to:2 c 30 CO Fc -IE: ce FC.;F:DO EC FC'31:60 FC,32: FC,32:c 9 BA FC 54:DO CE FC 56:20 C 9 Fe oc C 51 p: PO C 9 FC 50: fr.'uA 5 5 A Fèr D:,4 E 3 FCIE: 'O 81 018 F Cbl:A 2 03 FC 63:85 5 E FC 65:95 62 FC 67:CA FC 6 EI:-10 F 9 Fc 6 A:69 FC 69:18 Fc-bc: 69 01 FC 4-E:C 5 5 D FC 70;DO 15 FC 72:48 FC-3:20 81 F 13 ': 76: A 5 59 FC 78:4 A PC 79,AS FC 7 ^es F',-D:30 E 4 F(,70:81 5 E *FC 7 F:91 62 FC'211 131 60 Fr P-3:91 64 FCI 35: 90 F 3 FC:? 7: ^ 5 58 FC 39: AA FCP-A-Ae Fr BD:110 04 66. Fr CP:91 5 E Fr QI:A 5 67 FC:)3-91 60 Fc 95 CE 3 Fr 96: 99 FI' m 7; l'A Fais C 5 59 l:c^ * O ED pcl;lc 60 XCOD: UCI-D:24 66 grog 70 oc e;Al 46 5 c 9; 43 06 5 C fr." 5;O AD pc 209 LNFD 201 ? 213 9 CROLL 216 SCRLI 217 SCRL 2 za 231 SCAL 3 239 LASTLN 239 CLEOLI 244 CLEOL 2 253 DISPLAY DNE DIT INX UNE RYS Cmp UNE JBR occ LDA PHA i SR LDX LDA STA DEX 13 PL PLA CLC A Dd CMP DCS PHA JSR LDA LSR TAY DEY DMI LDA STA LDA STA acc LDA LSR TAY Dcs LDA STA LDA STA INY TYA ASL CPIP occ RTS 131 T cvs LSR ASL isa REI L 2 O-.1030 1119 LL 1 #te^ CTRLRET GU.,DOWN UTRLREY tjzpjyop e ETCV lb 3 RA 34 LX TOA 54 L#X SCRL 2 #1 WINDT Pl LASTLN SETCV Rtll,%RGIN A SCRLI (BA 54 L),Y (TOA 54 L),Y (DASSL), Y (T'ASSL),Y Sl:;L 3 1 M-ARGIN A CLEOL 2 Fonc ND ( 3454 L)#Y SKOND (DASBL) A RPARQZN CIEDLI M'ODES DSPLSO CH CH OSOLOO i LINE FEED? MOVE CURSOR DOWN A LINE BRANCH IF PIC SCROLL NECESSARY. i START WITH TOP WPJE. i SAVE IT FOR NOW je.ET BASCALC FOR THIS LINE i MOVE CURRENT DASCALC AS DESTINATION i(TEMPORARY BASE ADDR) i CET DESTINATION LINE i CALCULATE SOURCE LINú. s IS il THE LAST LINE? YES CLEAR IT. SAVE AS NEXT DESTINA-,r IDN LINE i GET BASE ADDR FOR SOURCE LINE i MOVE SOURCE TO DESTINATION i DIVIDE DY 2 i DONE YE" i YES, DO NEXT LINC. MOVE BOTH PAGES j 8 RANCH ALWAYS i DLANK FILL THE LAST LINE. i DIVIDE DY 2 j(? ICRMALLY A SPACE) (IF EJO COL Ut INS, ALSO A SPACE) #TEST FOR END OF LINE. &KVLT SY 2 ACAIN #CONTINUE IF MORC Ta DO, i ALL DONE. JTEST FOR 40 OR 80 STORE THE SINOLE CMARACTER AND RETURN &INSVRE PROPFR 40 COLUMM DISPLAY DY DROPPINQ DIT O i DISPLAY IN $ 400 PAGE. f*j ui r%) c> Co % O "Id P 1,011911 SARA MONITOR 17-APR-81 0000254 PAGE 15 j ALSO SET BACKGROUND COLOP i PRESERVE-CHARACTER DÉTERMINE WICH PAGE. i BRANCCH IF 0800 PAGE j ECHO CHARACTER i DACKSPACE? i CANCEL? i NO WRAP ARCUND ALLOWED. OUTPUT OACKSLASH i START At DEGINNINQ OF INDUF i DACK UR INPUT BUFFER t ET INPUT j'r EST FOR START/STOP i READ KSI) il S 17 A $PACE? i YES# PAUSE TIL NEXT KEYPRESS. i GIJIT THIS OPERATION? j N'( 3, IGNORE r HIS KEY. i Yg$, RESTART FC.ze: A 5 67 Fe f-A: 9 1 60 FCAC, 60 FCAD: FCAD: 48 FCAE: ^ 5 5 c rcoo: 4 A FCDI: AS FC 52 6 B K= 3:30 F 5 Fc 5: -l 5 E Fi.'27: e O Fcê,e: OC CO: 3 1 7 E FCDA:20 23 Fe Fc DD:c 9 es F Ce F:FO ID FCCI:C 9 98 FCC 3:FO 013 FCC 5,E 6 80 FCC 7:A 5 80 FCC 9:C 9 50 P?.Ca:00 17 9 CCO-A 9 OC FCCF:20 25 Fe F-'r-2: 'O EF Fe FV 5 Fi'C 5 A 5 68 FCD 7 20 25 Fe Fi CA: AO 01 FC:,C 94 80 F'CE-^ 4 80 F:EO FO F 3 F'E 2Ca 90 F:= 4-20 60 FD g CE 7 A 4 Po 91 7 E Fi E 8:c 9 80 F'L;DDO C 9 FCú:F: FCF-F:2 C 00 CO of F 2: Io 13 Fl F 4:10 2 E FD 9 f:7: C 9 AO F;p 9 go 07 Fr; t O 9 8 D F: FD CO 09 C e F ZC eg FA D.',2 AD 00 CO FC 15: 10 FO FD,57 A 9 30 Ft-1-9 4 C 25 Fe tri: C. e D,,c 6 C 70 00 r DF- F:) r A? 7 F 259 OSPOKO 141 262 OSPLBO 271 NOTCR 291 CANCEL 284 GETLNZ 205 GETLN 289 SKSPCE 292 NXTCHAR 297 CROUT 306 570 PLST JOS NOSTOP 3 il RDKEY 312 * 31 '3 KEYIN LDA STA RIS PHA LDA LSR TAY PLA ses STA RTS LDA )SR CMP SEO CMP DEG INC LDA CMP ONE LOA -JSR JSR Eau LDA JSR LDY STY LDY SEO DEC j SR LOY ST A CMP ONC EOU DIT OPL )SR CMP DEG Ctip 13 NE itip LOA OPL LDA itip Dx,PID ( BASBL), Y CH A DSFBKGND (DA 54 L),Y (INBUF), SKSPCE #199 CANCEL TEMP TEMP #INBUFLFN NXTCHAR #toc COUT CROUT 1. PROMPT COUT mi f Erip T Lflp CETLN Tr-MP RZCHAR TEMP ( INDUF), Y #IE 3 D NOTCR KBU NOSTOP KEYIN 3 #$AG STOPLST #280 t OSTOP ERRORZ lr D STOPLST bésl) COUT O r-4) Ln r%) C> CO %O -,%à jetp CKSWL) LOA 417 F àM'-KE SURE FIR-3 T 15 CURSOR SARA MONITOR 17-APR-81 #000234 PAGE là FDI ll 95 63 FD 13:20 es Po FDIé, 40 F 017:20 35 go Or DIA: 80 09 FOIC:A 5 69 F 019:20 9 D irc PD 21: 20 35 pro F 024:61 s' p D 25,08 F 026 49 FD 27,20 90 Ir C F 02 A:68 FD 20 29 FD 2 C: 'PO te FOMAD 00 Co FD,3 t:2 C Io co FD 24 60 Ir D 35 Eà 62 PD 37 00 09 9029:E 6 63 FO 3 D:A 9 7 ir FD 3 D:19 FD 2 E:25 63 FD-ZC:FO 05 e D-12:GE 00 Co FL'45: 90 EE FD 47:60 PD-1 Il: FDZB- F 048. PD-:8:20 77 FD gcl B:A 5 às FD.t D 29 Bo PDIF:49 AD FD'51:85 69 9 D 53 VO OC FO r D 16:^o Ce FD 58:D 9 Fo Fp FD 58:FO Es FD 5 D:98 Ir DM 10 Fre FD,%O: Ft,60:A 9 go P 062 Z 25 68 FD& 4:e S 69 FD& 6; 20 OC FD FD 69 C 9 go F 068:1 WO DE 9060,C 9 95 FD 6 F:DO D& 0071 20 88 ici) FD? 4:09 90 9,076:60 P 077- CD 77-A 9 PD 316 KEYINI Dis 222 KEYINZ Z 123 329 KEYIN 3 230 KEYIN 4 332 KEYWAIT 33 B 339 KWAIT 2 341 KEYRET 344 ESC 3 M 46 ESCAPE 350 ESCI 352 ESC 2 357 RDCHAR 261 COESC STA JOR FMA JSR ses LDA R JSR PLA PHP PHA JSR PLA PLP sec LDA DIT RTS INC DNE INC LOA CLC AND 13 EC ASL OCC RTS EGU JSR LOA AND EOR STA JSR LDY CMP DEG DEY DPL LDA AND STA %)SR cmp SEC CMP UNE -JSR ORA RTS TRA 54 H PZCK KEYWAIT KFY 1 N 2 CUWSOR DISPLAY Kq YWAIT *CG READ SCREEN JSAVE CHR AT CURSOR POSITIONITEST FOR KEYRRESS i CO CET IT 1 QIVE THEM AN UNDERSCORE FOR A TIME 1 00 SIEIL IF KEYPRUSEC ISAV" KRYPREBO STATUB 012 PLAY KEYINI KIIO KBD$TRB IDA 54 L RIJA 1 T 2 7 BA 84 M &* 7 fr IDA 84 M WEYRET KOD KEYWAIT GOESC Il.'ODES #IAB CURSOR RD:(EY 0 a ESCTADL Y ESC 3 ESCZ #800 l'ODES CUMSOR M.D EY #878 ESCAPE ** 95 KEYRET PICK ##80 j READ KEYSCARD i CLEAR KEYBOARD STROSE JJUST KREM COUNTINQ &TEST FUR DONE IRETURN IF TIMED OUT i SEI TO + SION FOR CURSOR MOVES i REAO NEXT CHARACTER i TEST FOR ESCAPE COMMAND. i LOOP TIL FOUNO OR DONE $ 90 READ A CHARACTER e SAVE STANDARD CURSOR. &ESCAPE CHARACTER? j FORWARD COPY? j CET CHARACTER FROM SCREEN )UT TO NORMAL ABCII PQ t A m CD oe %a *à LOA #CLSCRN 17-APR-81 #000234 PAGE 7 fl= 98 SARA MONITOR 374 * 375 ESCVECT 377 ' 3134 * 383 PICK 393 PICK 40 395 * PH^ LDA PHA RTS Dru DFB DFB DFO DFD DF 8 VFB OF 3 DFB LDA LSR TAY DIT Dvc DCC LDA RTS LDA RTS CHU F 07 IP: 48 F 07 ^:89 7 F FO FD 70:48 FD-,E:60 F 07 F: F 07 F,90 FDE 0:70 F D-? 1: 68 F 082:4 E FD 83: 48 F'.54:09 F De 5:B 6 F 086:ce Fr,,37: ^ 3 FC=gz Frii: A 5 5 c PD.3 A:4 A FOEB ^ 13 FD 3 C:24 68 F LlE:50 05 FDOO:qo 03 FD 02:91 60 FD? 4; 60 FD 05-31 5 E F:)' 7: 60 DI;B: Frle: ESCVEC Ty Ct.EOL-1 CLEOP-1 CLSCRN-1 COL 40-1 COLSO-i CURLEFT-1 CURICHT-1 CUXDOWN-1 CURUP-1 il, m A MODES PICK 40 PICK 40 (BASSL)#Y (BA 54 L),Y i CET A CHARACTER AT CURRENT CURSOR POSITION i DETERMINE WHICH PAGE. j".D IF 80 COLUMN MODE. FORCET CARRY IF 40 COLUMNS s CET CHARACTER PROM * 400 PAGE 11:0149 C r%) Ln r%) Co % O 17-APR-81 9000254 PACE 19 FD*Q F Des: A 9 03 PU-A SD DO FF 9090: rr,ço:oa gpge: ^ 2 03 Ir DAO: 86 7 fr Ir VA 2, CD Bc Irr FD 1- 5: 90 CA FF MIDAS, BD 04 fr Ir 9: 95 6 E PD.%D:DD Da FF FZ 20:95 38 FDC 2 CA 9033:10 ED FDD 5 135 82 FDDI:^ 9 AO FD 39:035 7 E PDDD:A 9 60 FGZD:85 131 Pr Dror: A 9 Fr FDCI:85 69 Ft':3:20 4 F FB FDC 6: 2 CL 09 T Rr a SETUP a 9 BOETUIR 1 1 O 1 1 1 4 1 5 1 là 1 7 le M * EOU LOA STA E(U CLO LDX STX LDA STA LDA STA LDA STA DEX BPL STA LDA STA LDA STA LDA STA JSR si-Foo #3 INBUF+l NPIIRQ X tri-CA, X HOOKS, X CSWL, X VOCUNDS X L Nt ROINX SEIUMI IDDR Vel #$AO 1.49 tup #460 LOSLOT 43 FF MODES COL 40 j ZERO PAGE 19 ON 31 i air COURS El à MMUT BUFFER AT 13 AO i SET 40 COLUMNS, CLEAR SCREEN z S', r%) Ln m c> CD NO 1 1 % 4 SARA MONITOR MZIZ 9 C RAM CHARACTER SET LOAOER oo.;O 27 ADR OCAO: 2 FJ CPORTL C:)All 29 CPORTH Cof-2: 30 CTEMP OOA 2: 31 CTEM Pl OOA 4: 32 YTEMP ODL'4 ' 33 ROWTEMP cots: 34 CWRTON CDDA: 35 CWRTOFF grec: 36 C 32 CTRL FFED: 37 C 82 INT FDC 6: 39 * FDC 6; 29 * O'Dtà: A 9 78 40 GENENTR FDCî 3:85 AO 41 FDCA:A 9 08 42 FDM 55 AI 43 FDCE:A 9 FO 44 FDDO:85 A 4 45 FDD 2:^ 9 00 46 FDD 4:AA 47 FZ'Z-5-95 84 49 ZIPTEMPS gr'D 7:EB 49 FZ:CS;EO 20 50 XDDA: DO F 9 51 wilic A 9 05 52 901-E la 53 froc F, 08 54 r CEO 48 55 ç 1 =-I P 6 A 2 56 CENASC Fr Z 3 AO 07 57 CASCII A 2 58 GASCI 2 CEZ-7 3 A 59 CASCI 3 FD 28 91 AO 60 rt,:AES 61 FD-28 88 62 rj':C: 30 06 à 3 FZ',EE:CO 03 64 FDFODO F 5 65 FDM 2 FO FI 66 FZ-r-4,20 99 FE 67 CASCI 4 FD::7: DO 08 AS FD.-9:C 9 OA 69 F Dr-'D,VO E 6 70 FDMA 2 24 71 FCFF, DO r O 72 gr E: 1 AIS 73 CBYTES rsc,216 74 c 5 e,3 A 2 17 75 AO 05 76 CCOLMS Z 1 7 26 38 77 CSHFT FE-Z,':?: OA 79 FE,A DO OE 79 r 5 'C -1,4 A 2 80 çr=-E 6 A 4 93 1 e E.13 FO là 92 Eov EGU EGU EOU EQU EOU EQU EOU EGU EOV EGU LOA STA LDA STA LDA STA LDA TAX STA INX CPX UNE LOA CLC PHP PRA STX LOY LDX TXA STA INX DEY 13,41 CPY 13 PIE OEO -JSR 13 cg CIMP UNE LUX DNE PLA PLP LOX LDY ROL ASL UNE STY DEC CEQ b AO A nq Atr 4 1 At.R+ 2 AD." 4,3 AOR+ 4 Ar-14-20 4 CODD $CODA t FFEC OFFED #878 CPORTL #$a CPORTH i* 240 Y TEMP #0 ROWTEMP X #120 Z 1 PTEMPS #3 c: TEMP #7 CTEMP (CPO Rt L),Y CASCI 4 #03 CASCI 3 CASCI 2 èjx Tp ORT CVTES #$A CASCII #1824 GENASC ROITEMP+ 4,X A S 41 Tc NT CTF-mp y 1 EMP CCUE i INIT SCREEN INUX LOCATIONS JSET UP INDEX TO CHRSET j FME THE FIRST DIT PATTERN j (PHANTOM 9TH 13 IT SHIFTEU AS DIT 0) l; ENERAYE THE ASCII CODES FOR THE FIRST PAS$ e SXXP-CHR O / 4 s SXXE-CHR 1 / 5 àSXXD-CHR 2 6 s XXC-CHR 3 7 j SXXD-CHR O 4 i*XXA-CHR 1 5 j ZXX 9-CHR 2 6 1#XXS-CHR 2 7 1 %O DECODE CHARACTER TAULE. j SECONO SET OF 4 ? i BR Afq CH ALWAYS i RESTORE DIT PATTERN i( 4 CHARACTERS Or & ROWS) (FIVE COLUMNS) UREAK 13 YTES INTO DIT GROVPS i 13 -,ANCH IF ?IORE DITS IN THIS BYTE (,'-'0 TE CARRY IS SET) i DRANCH IF ALL DONE M) Ln m c> Co % O 11-4 17-APR-81 #Oe Uffl'N" M EY CHARACTER TADLE JNDIEX (CARRY KEE 1116 PYTE NON-ZERO UNTIL ALL REBTORE COLUMN COUINT if.OT ALL FIVE Bl TS? à Na DO NEXT #ALL Rn WS DONú? i P C 00 NE XT i SAVE REMAININ 9 DIT PATTERN AND CARRY i MOVE EM TO NO'J D 18 PLAYIED VIDEC AREA FEI ' ^ 4 ^ 4 r Elà ú 9 CA FE Jr E 17 2 A FEIS A 4 AZ FEI^ IBO FEJD DO EA FE Dl C-A FE E: 1 O E FE 1,0 08 r E.11; 48 r Ez 21 20 28 FE, FEZ 5: AC 01 Pir FE 20: FE',: Fú 213: A 2 1 r FEVA: AO 00 FE 2 C'B 5 84 FF'2 ú, GA FE.-F:229 3 E FE 21 1 1 AO FEZ 3 CA FE' 44: Ce *FEZ-5:CO 08 FE 27 DO F 3 FE 39; 20 99 FE FEZ'-C:CIP 09 FE:?E:FO 04 FE.;O: e A FE 41;JO E 7 FE 43; 6 O FE 44: FE 44-A 9 01 FE 46:B 5 A 2 FEZB:A 9 60 FE:-&A: 2 C DO CO FE 4 D:20 AE FE F ElO:A 9 20 FE 52:20 AE FE FE'15:2 C DA CO F El,8:20 PB FE 92 E 5 D: C 6 A 2 FE'e D:10 16 FEF:A 9 08 FE 4 I:E 5 AI Fú 63:AO 07 FEé% 5 Bl AO FEA 7:19 FE 69:69 Oe FE 6 A:91 AO F 156 C 813 F EiD I O F 6 FEàF:-"O 99 FE FE 72 9 O CF FE 74:,&O Fe,$ AO 03 O Me M, 7 F a 137 SHFTCNT es 96 DONE 97 9 TORCHRS 99 ETORBET 99 STOROW Ili lie" 114 QENDONE Ilà GENI lie 127 NYTASCI 128 NXTASC 2 13 V 137 CEN 2 LOV LVA ROL LOY DEY UNE DEX OPL PHR PHA VSN elp Eau LDX LDY LDA ASL AND STA DEX INY CRY UNE JSR CMP DEG TXA OPL RTS LDA STA LDA DIT isp. LDA js R DIT JSR DEC OPL LDA STA LDY LDA CLC ADC STA DEY SPL. OSR BCC RTS LOY LDA YIEMP CE-f FT CCOLMS STORCHRS Ce YTES 1:0 ROLJTEMPX A #t 3 E CCPORTL),Y #IIEI STOROW NXTPORT elle ENDONE STORSET #1 CTLMP #$ 60 CWKTDN VRETRCE VRETRCE CWXTOFF ALTCHR o.'r EMP I.Er 2 ego CPCRTH #7 (CRORTL),Y OIIO (CPD Ft TL),Y NXTASC 2 NY 7 PORT 14 ' X TASC 1 4 * 2 *t 7 r a ARE SHIP 71 ED) j KOVE CHARACTER PATTERNS TC VIDEC ARRA i SHIFT TC CENTER #STRIP EXTRA CARDAGE i THIS CROUP DWIE? i NO, NEXT ROW j ALL ROWS STORED? i PARTIAL SET ($ 479SDFF) SET NORMAL MODE i PREPARE TO SEND BYTES YO CHARACTER s CENERATOR RAM i WAIT FOR NEXT VENTICAU RETRACE i WAIT AOAIN j CHARACTERS ARE NOW LOADED i REPEAT THIS SET FOR OTHER 64 CHARACTERS i HAVE WE DONE ALTERNATES VET? à P O DO I Tl BUMP ASCII VALVES FOR NEXT SET i THE USU At COUNDOWN SETUP ALIERNAIE WITH VNDERLINES i 11-, tu ui m c> c" % O 1 * 4 17-APR-SI 00002 e 4 PAGE 41 MOI 39 C FE 79:99 FC 05 FE-,C:Q 9 FC 07 FE 7 F 89 FE 30 10 F 7 FE 82:A 9 09 FE 84:85 AI F Ee 6:00 CO FEES: Fe BB:AO 07 F Ee A,Bl AO FESIC 49 20 FEBE:91 AO PE 90:98 FE 91:10 F 7 FE 93:20 99 FE FE 96:90 FO FE 98:60 FE 99: FE? 9:A 5 AO FE 92,49 90 FE 90:85 AO FE 9 F 30 02 FEAI:E 6 AI FEA 3: A 5 AI FA 5;c 9 OC çr=-A 7 DO 04 Fc'A 9:^ 9 04 FE D 85 AI Fr AD:60 FEAE: Pz-t-E. Fe A-E 135 A 3 'i; 0:AD EC FF =Z 3:29 3 F FEL 5 05 A 3 FE.'7-SD EC FF F;:"A:A 9 09 9 E;C:BD ED FF FEZ'l F, ZC ED PF FEC 2 FO FB FEC 4:60 FEC 5: FEC 3: FF-C 5:FO 01 82 FECS: IE 3 FEC 9:40 84 Si FECC:2 F F=-CD:e B 44 81 FEDO:29 FEDI:02 IE 01 FED 4 91 FED 5:7 C IF 49 FEDB:DO FEC-9-09 A 09 43 FECC 14 FIZ',D 31 2 A 22 RAM CHARACTER SET 139 UNDER STA STA 141 DEY 142 OPL 142 LOA 144 STA 2 NE 147 ALTCHR LDY 148 ALTCI LDA 149 EOR STA 151 DEY 152 OPL 153 JSR 154 acc RTS 157 NXTPORT LDA 158 EOR 159 STA emi 161 INC 162 NOHICH LDA 163 CMP 164 UNE LOA 166 STA 167 PORTDN RTS 168 * 169 * VRETRCE STA 171 LDA 172 AND 172 GRA 174 STA LDA 176 STA 177 VIAAIT DIT t 7 g REG 179 RTS 191 CHRSET EGU 182 DFB L 83 DFB 184 DFD DFB IB 6 OFS 187 DFB 188 v FB LDAOCR FCI Y &/Fc Y L'N O E R *la CPORTH 0 EM # 7 (CRORTL) Y #u 2 O CCPORTL),Y ALTC 1 NX 7 PORT ALTCHR t PORTL #190 CPORTL NOM 1 CH Cpa RTH C.PORTH #tc P Or TDN loti CPO Rt H CTEM Pt C 82 CTRL 013 F CTEM Pl C 32 CTRL CU 21 NT VIM 1 T j A Djus T ASCII FOR ALTERNATE SET i$ 20 >O $ 40 >$ 60 j ADJUST THEM ALL s CONVERT $ 78->*FB OR SFB-$ 713 jl F -C THEN -4 i SAVE DITS TO DE STORED #CCNTROU PORT FOR IC 521 i RESET Hi BITS TO O s TEST VERTICAL REIRACE j WAIT FOR RETRACE $Oro, toi, 882 si a ,10, $ 84, $ 01, $ 2 F $ 59, $ 44, $ 131, $ 29 *')20 SIE, $ 01, $ 91 #7 C, 9 IF, $ 49, $ 30 te A,$Os $ 43 $ 14 *il, $ 2 A %- 2 $ 13 r%) fil rj c> CO % O 17-APR-91 eo OO 254 PAGE 22 M 6.49 C orúúO: 13 FEEI:E 3 F 7 C 4 FEE 4:91 FM:48 A 2 DA FEES:24 Ir EEIF: câ 4 A 62 pr Elic: BC Mú 90:24 C 6 F 13 Ferc:63 rúFI-OC Ci 46 FEF 4:17 F Er 5:52 SA AP FEFS: 16 FEF 9:14 93 33 FEFC:31 FEFD-C 6 FB OC FFOO:73 FF Ol 3 F 46 17 FF 04:62 FF 05 SC; 21 E 6 FFOB:IS FF 09-6 A BD 61 FF:QC:CF 9 r F:rj D 18 62 74 FFIO:Dl FF 11:89 IS 49 FFI 4 4 C FF 15:91 CO 9:3 FF 113: 09 FC 19:' C 91 CO FFIC:14 FFIO:10 BC EF FFZO:07 F;:2 I-17 43 90 FF 24 3 I FF'5; 134 IE DF FF 9:OB FF 29:31 134 F 13 FFZC:FE *F 02 D 77 3 E 3 E FF 30- 17 FF 31:62 OC FD FF 24 C 7 FF'35:CO E 3 09 FFB:51 1:9 '59 C 5 EO CO FF 2 * 73 >O: 113 OC 42 sr F 40: M F 941:l 02 20 FF 44:42 g F.t 5:13 E 41 18 13 C F 049:08 00 70 Fg-;C EE Fr 4 o 00 èE 2, t F 7 èC 4 091 t 48, $A 2, $DA,'624 *çà 84 A * 62-013 C 424, SC 6 SFO, 163 SBC,$CI,646,$ 17 414, SE; 1 $ 23 $ 31 *C 6, SFB, $OC $ 73 t 3 F $ 46,617 t 62 *BC, * 21 4 $E 6, * 113 64, $BD, $ 61, $CF $ 18, $ 62 $ 74, $Dl $ 89,$IBI$ 491 $ 4 c $ 91, $CO, #Fa, 109 t 10 * 13 C t EF, $ 07 $ 17, 043 $las $ 31 $IE, $Or, $os $ 84 OFS $FE 471,$ 3 E,$ZE,$ 17 962,$BC#SFD,$C 7 * 501 $E 3 0091 * 51 *C 5 $ES #Ci $ 73 il Ot $OC, t 42, $ 3 z 1101, $ 020 $ 20 $ 42 13 E $ 41 St O SOC $CO, 000 $ 70 SEú , $ 1 t $ 11, $ 21 Ors Dgo Dru Dits Dru Ore ore Dpo OF 13 DFD DFB Ors DF 3 DFB DFO DFB DFO DFO Dra Dra Dru Dra VB OFO DFB DFO DFO DÉro 2 tl zt 5 2 t 6 1 1 r* 1) VI r%) c> Co %O 1 % 4 RAM CHARACTER SET LOAIER 17-APR-SI #000254 PAGE 3 R^m CHARACTER SET LOADCR FF 50:21 Fgr-3 i il 02 EO FF 34: 3 c FF% 5:21 31 02 F 959: úO Firliq IC 00 C 13 Ffr 5 c: 89 prir 5 ogo6214 FF 60: lir rfr 6 t 46 A 2 DE FF 64:43 F 965 zc 04 ce FFée:DE frfr 69: FF CE 7 D FF 6 c:37 Flvb D 49 98 95 FF 70- 18 PF 71:90 09 62 FF 74 01 PF 75:44 EB SB FF 79:FB FF 79:02 90 40 FF-,C:00 FF-,D:io EO 03 FFSO,02 FF'31:00 40 00 F 994:00 F;:25:09 00 00 F,-a S:28 r;r 59 10 42 44 F Fec:25 :;:a D 92 138 2 F FF'40: 413 FF 91 25 44 10 FF 04:92 F 9115: 02 00 2 F FF": 5 A FF 99: 40 45 02 Fpqc:e E FF-D, 64 50 9 C FFAO:01 FFAI 3 E 26 4; FFA 4- 80 FFA 5:21 90 O ( FFAS:05 FFA 9:t DO FB S( FFACAO F:FAD: 05 08 FE FFBOs O FF- 1:29 05 s FFL'4. FFD 4: FFZ; 4, F 2 FB F=D 6, CIF FD OFB 011,$ 02,$EO $ 3 C DFO i Dfra IIC, 600, $ce $ 89 DFO s-0,$ 62,$ 14 $i F DFB t 4 à SA 2, *D Et $ 43 OFO SZC,$ 04,$ 913 $CE DFB t FF $CE,$ 7 D#$ 37 DFB $ 49, $ 813, 195, *M DFO sgasoq $ 62 $Dl DFO $ 44, SES $ 80 IFB DFS 102,$ 90,$ 40 $OO DFD 010,$EO,$ 03,$ 02 DFO t OO,$ 40,$ 00,600 DFO OFS 110 $ 42 $ 44, $ 25 Dirc 1,-2, $ 813 UIF $ 49 DFO 125, $ 44 -bl O $ 132 Dro S 02 100, $IF 65 A I)FI 3 $ 40 $ 45,t O 2-t BE OF 13 164,$ 50,090 $Ol DFB t 3 E,926,$ 42,$ 130 Dru 821,$BO #OO,$ 05 DFB $ 00, $FS, 1130, $ 00 OFO 105 soo s Fe 160 DFO IV 3, $ 03 ",S,3 EOU 61 Dt 4 COIJT 2 cw KEYIN E(Y)4 2 te 22 t 2 '37 )238 )239 242 * 243 HOOKS 45 146 * 247 V 30 UNDS ru Ln t'O c> Co %O 11-4 moèj 9 l. RAM CHARACTER SET LGAVER 17-APR-81 #000234 RACE 24 FF 28:00 50 00 249 Fras: 113 FF 3 c; 249 FXSC:4 C 99 Fà 250 FFDF:40 251 FF-:O: C 2 CF DO 252 FFC 3: D 9 D 2 C 9 F Or Cà; C 7 CO D 4 lrirc 9: AO CA CI FFCC:CE DS Ci P Ir CF:D 2 D 9 AC Flr D 2: AO 81 89 FFD 5:De 80 AO FPDB- AO CI DO FFED: DO CC C 5 FFDE,AO C 3 CF FREI CD DO 05 FFE 4:D 4 C 5 D 2 FFE 7:A O C 9 CE FFEA- C 3 AE AE FFED:CA D 2 Ce orfffro: 233 OFFO: fwpo CC PFFI: DO 3 fr FF 2: Da 4 *FF 3:84 5 FPF 4:DS 6 FFFS:PBO 7 FFF 6:95 B fr FF 7 BA 9 "Fe: 88 10 FFF 9:00 il FFFA: 12 Fw'r A: CA r F 13 FFFC:úE F 4 14 FFFE:CD FF 15 0000 16 DF 9 to $ 50,0,$Ie Ntiffla irip RTI ^BC RECON ICOPYRIQHT j 114 DIAONOSTICS JANVARY, 1980 APPLE COMPUTER INC,JRM' C Hri ru -Ivizc T ESCTADL NMI RESET IRG DFB DFB DFU OFB OFS DFO DFG DFB DFD VB $CC $DO $D 3 t B 4 6 D El las #95 $SA $ 80 $ 00 i NOTH 1 NO IFIRST DIAGNOSTICS DW IFFCA DW DIAGN DI.4 ié-FCD SUCCESSFUL ASSEMBLY: NO ERRORS N t A 9 %) c> c" %O 11.4 r' 01. c> Ci Ln CY ZHD 435 COCA d 3 S vâve ZIUDS c 9 DA doalméd 40 ve limblu aond 113 U d A 4 J No Dau 699 J ocisud CI(ve Zx 3 mud ZGÈA Si Aced Dvbi AD Id 280 d adalo 306 A UHCIXN acàtd SVGIXN At 6 A IVIXN Z"d HOIHDN CV 34 3 AOW DZVJ HDIVWSIW Zçvd d(UABI 6312 d 1 (, Sw 04 NZA 3 X mocà INIA 3 M 9 I Gd oui BAAJZ IGISCI le SIADDH boid ZN 1130 MA *Swtgao laad CIDSV 3 430 A IO 3 AO Sai dza A Z 393 scazi amaddi VOYA 43 dt 4 ne 63 vd 09 r 2 lia odyd arase MA 11010 1#6 d idm IC)IUMO VGOD 805 UM 69 t Nadn D coud Viso 39 NGWUD 9 ZWA J.AOD CZ 3 A 02110 D 6 tud Z 10310 163 A 3 a WX O VOVA 4 831) BD 103 d 1130 f IND COU 3 DdsIQ 3 GDA 111313 VCOJ DIVDSVG Coad 4 Itsve 3 G allosv 136 à CDSV 9 tam TDIIV Vezd icv si 13 div Labd coai 3 S Z 98 J l'Oti Ds e CD 4 1 ials MA mobbatid cave iviau avàA 13 sme ad AA 4 avau oovi 1.1 4 oud C 9 zx 3 H Ud Aaài DA Ced ZD 6 d 0 IfIZ 1 d Gàa A di XN 663 A UVH Dlxt 4 t 3 DJ IDSVIXN C 93 d W 3 AON ACVA 1 'IN yd:dd 4 Z Ncti 806 A Asvw 69 OSIA 31 dand HMSW i L *NIA 3 X tcaiz Ca M OOOD zdo Horil dd CAI NAUCCI ZS 00 CZYA N'1133 rc:):d en 3 b czad ar Dsve e 3 ad I VIO 53 O Ade 13 sa ccoi-L AMIN 3 106 â 4 cdwna DISA Aw Wna z O vd AV Id SIG Wd Ubvic 33 vd AD cc J.31311 bin D 6 cild 13 MIULD tazd Hmso dg 4 UHOUD ed 6 A ai.no D Zidild 0 t'100 dtud NUDSID 69 ed 1031 D 398 i L 3 sw HD CZ 34 Lrilail:) C 1321 d ZDIDSO àMà 014 offl 19 C'liati Cir DA IDIVDSVG GODA Htsva dg 1110 sy Aaàd ZDSV accà èd IV ov HCV 6 Z Daiv ta 6 A 00,11 JUDS NVOS d 43 i floti c Laki liv 3 d 3 a Aa Mau IDCI N VU X N ZSCLXN obite N N'll SV'l LIV IA 3 w CNIA 3 X suisaux Ancin ciffli D 530 * bl.LN',t JSZ 18,130 Ti Osve 3 dd D 53 imob;tia c:Iena ad Wila os-ids(l XA Vidsla Ls 3 a dnain D IH 018 no dt 431:) Id HSD lien 03 ^ O w:) id 03-10 1 '103-l D H O 01 MOCIR NOI 1 a aille 198 VI 3 Cz 108 y 01 losv DSY -1 ttl -izv Ilv Cqud elàà t'a ZBSA lave Doce 19 VA D 6 d, 39 VA Z 4 ZODA 6 .6 zi 993 A etiod Daif d t,06 A LSDA çcad Mcid D La Lzad cidé; i Btr 3 zi CBGA oirc A f Avd 62 iv 2 i 4 OOGA (IVDA Odemi T 6 Vd 1,VCÀ av Z 03 A av úcou 216 d y/s A 68 OA O 3321 A 6 ZV 4 1 IVA 3 COA aâbid bovid DZGA yú 9 t Irú voeias agace Cid Ds yú M ziaw 00 -à ly 3 dad tiv A Uv Hmd 09 ile X 3 Htid C O c,,J dsl Amud OZ%"d 140180 d aval H Dd et d NTIXN C 161 118 IX 14 4 te A t VIXN Z 96 d d OISON LOIA IXNAOW ICIA 5300 W 89 NIOUVWI ec alivmx atad ú 3 UA 3 X Ztqà ZNIAMA t ZUA d Wnr CZVA N 31 dng Nl GQ dingue &a WN 4130 D Zd 3 NO 09430 tt 3:i VIDSVO talc GNO Uod 99 úosa Blond bobu 3 ia"e Dsvdffla laimi 1 d&JAG baie CNOW Gd SC VV Ze 13801 C 994 e Noifflo CO-ID Idntin D 3 %'U:i NMOC Un D 6 O Ue ldwal D Cv IAOUD A 31 à HIM Od D IV -10 UIN 00 ú 6 Gà sylow D D 96 e d 031 D 14 ZA IMISCID 86 adle SW-1000 gaze 3 CYMUVD lis O ved d Aolla Givà Illus (te ')a Hasve 19 ilosv z O và 3 NOODSV 90 ed UHDIIV Gaza HIFV ai. May ZL HIV 4 I 10 Cwk& À& 4 * 4 ffl '312 VI locè-j-S 3 O Yd t GZ 0000 19-Ud V-tl c- Cu LM Cu livisz Z 96 A covii TAAIMA O"id 1 BO Nn ORA Bgdd dkincisi 9 AIVA ivisi àééà d W Il 08 Itsysi Z 9 13 sifols VZ 341 Isicicis zood INDIâHS V 13 J zewims Ce VA Sd W 3 úd 12 COCA doi Nim vc AJIUA scyd W 35 N 84 Và èIDISú 46 úidi. CIMORISI é 5 éâ x e 131 Dv Htsysi C 9 mouois DE 321 31 Vús V 4 idni 3 S ryod MADI 38 4 DSâd, AWIIA WISNIM ZAJIIIA 11381,81 ensci -issusú XSVWAS sum Dblojs XDVIS dni 3 s ADI 39 *V Bc Dtvà sidro qc:)Jd 3 çbjd * 19 lobai Br Id V 9 obed 4 . 181 d AYBA et J.IVMA As 3 à 3 DUIBUA aviâ àfachki àú 11 à IDVEU Si &Gad Adw 3 i 99 mesvai C 9 4 vois tivvd" imais dy VA 3 Dds *VVA 300 wi 3 S auvât 9 a 30 vd tcec>oo* le-bdy-zl lotw As As 031 mos 312 vi IDIWAS ID 53 er GAZ. z 11 VM 1 ZPOA ZNI Jn M b?,CIA d OISON ZO Od 3 Ddsxs 30 Dd Don 6 EDA Z 1031 D TâDA a UDS c 9 DA C 1138 út Dd 113 aisi 9 CDA ZDIDSE 61 DA x Avidste DAGA iàaiuno 6 GRA ZHDú 39 CDEA iriati(ID CGRA vedw D 66 ed 4 Id O 31 D V 49 A V 0813 S scad CDSV 9 e GA casino DIRA d WAG 6 A Yd-, ua^ori dc VA av U Oovà luois dyvd d 3 S Y 6 VA UOMMU Cevi Ddsud CZYA H:)Ivwslw EGVA ixfflow ICVA 1 VUU 6 I Vd OIIDSV 60 VA CZIDSY ZA 6 A I Dd IV Z 06 A NOIOD Ud C 06 A,, X 3 H Ud e Gbd 4 IVIXN Z 66 d MON 696 A SVOIXN dt 6 d Wn N 430 DZ 6 A ZNOW 806 A ú 13 U assi OMOIG 6 Ztâ a" OOOD idwal D Cv liuodo ov loissi le 31 vls DL icv Et/- liv tpz litffl oz Xd W,31 D 9 WSYW 69 masvai ú 9 4 Hesvc 19 AD oc NIOUYWU 6 Q 3 d'JD$ 3 Ct-Gd livm Aew QC Gd INI Ae M 910 J isidois zoad ZNII-10 QGDA Osidse CYDA 11031 D 6 e DA 11 mês 19 DA allas MCDA I.Mo D CCDA IDIVDSVC GODA alno D Zeed 1 DV 01 sú 900 A *IIH 022 MA A Dias ISBA boisi L 68 A 4 d MID TZBA 00136 C GA aosy SICCA adwria DOBA 1 àjoué 43 1 AVA docimu ZOVA zowils cevi bois avvdèl I 530 lévd 06 czyd dsixsud OLVA aÀAM Dtvi 3 AC 4 Da VA dàoile CIVA liasy LOVA ali DEV 136 A Ddly kaài IDDA 8 dd Z:)6 d 3.tloud Dvàd twlx N Deàd livisz Z 96 A ilsiffl ztàA HDO Sa WD D 16 A NCJ t,06 À 1138 4 AZA NO 18 PID GGOD "ave 3 sn BACO dw 3 13 av OWDRI L 9 dwal os H>V U HZV leú H Dd CL 4 HPISZ A 9 ldwojd 69 6300 W 89 183 VE 1 t 9 lesve 09 HD DG NIO Mykli EI& CDE 3 erad b NIA 3 m Ic Gj,, NIA 3 X AOCA 1 AUD A 3 DA N 1130 GODA ONOXO 4 so Vv Dd N 11 SY 1 LSDA lice Ds Sc DA ilime OCDA IAOD QZDA NIIIXN ZODA dn IA 31 63 ed Ntiocuno 6 DSA 1 H Olkl AD LSBA Id A Un D 3 VRà 1081 rio D C 684 Nd DSID 698 â Ot IOD AVOA IDSY Daed 1 dtine 6 ond dwmaisi 9 A Yd c WDAVS GD Yd 4. 3 aoilas sayd 3 Dds tvyd moud 3 301 vd dkimp azyd 31 A Otybd 39 vd IA Ad A Ot VA NO Wd D 9 ZVA NOIIE 11 vd 3 NOODSV 90 vi 111 DSV A 06 d 1 s VW As TC 64 ax 3 H Ud A 86 A IV 13 U sv 6 à D 3 AOWD DzâA BASOI 396 A iloie le 6 A d NIIXN 916 A AUIN 31 106 d 4 NOMU 699 ci VOOD d W 3 Lt'Dèd 118 H.LW Od D IV d An 85 I CO 3/- Vz lay 9 z I Dd aú IMSD 39 YDV LS V 9 CNDXC 49 Ht SVCI C 9 Hesve A; wie:àim oc DOINUDS 09 úad A 3 m LI-11 1 LNIAB BZ Zm A 3 1 cm DOGJ ti VHUM I-B Di 113 Dt 4 v D c"A AV Id SIG 06 Dd t'Iti Ds vz DA 1,13 EI VEDA tad'le LD tlz Dd ZUOH Dtjl:dd U- OBIABI âa 2 à HAD 135 ZD 8 J 4 D'IVD Bvil dntiil:> "R:i 1031 D 36 CA coulas ú 95 A cela:) àt ISA Dsvdwna lani Odwna DA Vd edwna bavi 318 M úD'id Àwwno ZOVA I-18 O " 1 ' adoffl cey A e 3 sn azid IYúNldd 19 vd Add A ccvd lúV 3 d 3 d IZI Yi WMD voldi MHDUD Gd â Dd GIO 30 *J CIM 0815 I 6 D 6 e ZX 3 H Ud 486 j IVú 81 Sbed EVIOWD D 9 "e asolx N âzbd UHDIXN ZCôA NVDS E 16 A Z 1.3 d o O b A NOVIC 33111 A euisoex 010 D dw 3 i A >y bov Ov NAMGGI ZB AYSA C 4 HCY 64 HIV &Z HPIS'A I z Adw 3 i 09 basun:) 69 GNDWOA 99 lesvel Z 9 l*sve Bc d OINIM Y& N 31 dn ENI OZ N. c> CX) Cu Ln (Ni La 3 D Vd t ZOOO* 18-Md V-ZI S 53 daa V AB 031 UDS 319 VI 106 kj As il Ch C> Cu Ln Cu eux 1141 CUD SVOCH Naiâo 4 d Id HDúlv IDSVIXU lasmois idb 4 s D CII Syz sdw 3 ldlz úNISCID D 5205 3 idddz cadd t'aidd avait Beau t 9 id wz 3 d 403 à 433 à G 121 U ebu 4 L 41 czi ú 3539 Dddd 4 lulzaco Dadd lasbw D e 3 ad HOIMM Cvaw Idac Un 6 zaid T Ule àt IA sumouois Ba 3 A SWIODO cold ZIDúVO c 3 cd âif 4::lli G 9 DCA 4 Ot")i Did Géo 4 UVHDGU 09 ad f WN Vdiiii, oldll%,N Dilidid llvm A da 3 d i-mod LXN éâlâ Me QZ 24 x No Q Nml lir 3 à ZNOC az 3 d 831 ACD 103 â TIDSVO c 3 am t drula Zvj " W 31 d sscà cosa ec(là IUVIDSI odd A SO Nn OUA 98 afid 13 mú 3 u^ avlà 131 'w Va-Id azsvlx N C 93 A momois Daad il O úd Hs V 13 d ti 2 sva tàc A osvi 13 b laad d Aims 06 GA 4 123 A Dsa àmà sé leyd tmoos le-udw-ti ssabcov AU OBIVOS 316 vi loaw As REVENDICATIONS 1 Dans un calculateur numérique comportant une mémoire et qui est utilisé conjointement avec un affichage balayé à trame, ledit affichage comprenant un compteur numérique qui fournit un compte vertical représentatif de la ligne horizontale balayée par le faisceau dudit affi- chage, ladite mémoire fournissant des données pour affi- cher des rangées de caractères, un moyen d'adressage cou- plé avec ladite mémoire pour faire défiler les caractères affichés, ledit moyen d'adressage étant caractérisé en ce qu'il comprend: un additionneur comportant des première et seconde bornes d'entrée et dont la sortie fournit une partie d'un signal d'adresse pour ladite mémoire, la première borne d'entrée de cet additionneur étant couplée de manière à recevoir les bits de plus faible poids dudit compte vertical; ledit calculateur produisant une sé- quence périodiquement répétée de mots numériques appli- quée à la seconde borne d'entrée dudit additionneur, moyennant quoi les caractères présents sur l'affichage défilent avec un minimum de mouvement de données dans ladite mémoire. 2 Moyen d'adressage suivant la revendication 1, caractérisé en ce que la séquence de mots numériques fournie par le calculateur a une valeur maximale égale au nombre de lignes balayées dans chacune desdites rangées de caractères. 3 Moyen d'adressage suivant la revendication 2, caractérisé en ce que la séquence de mots numériques est incrémentée pour chaque image affichée. 4 Dans un affichage vidéo balayé à trame commandé numériquement destiné à être utilisé avec un microcalcula- teur ou analogues, affichage qui présente des images en couleur en réponse à des signaux de chrominance ayant des relations de phase prédéterminées avec un signal de référence de fréquence (f), un montage destiné à produire un signal de chrominance commandé numériquement, ledit montage étant caractérisé en ce qu'il comprend: un moyen de génération de mot numérique pour engendrer des signaux numériques prédéterminés; un moyen de mise en série couplé avec ledit moyen de génération pour répéter ledit mot sous une forme séquentielle à une fréquence prédéterminée de manière à produire des composantes de fréquence à ladite fréquence f; et un moyen de conversion, couplé avec ledit moyen de mise en série pour convertir des signaux de sortie provenant de ce dernier en un signal de courant alternatif; moyennant quoi un signal de chrominance vidéo est engendré. Montage suivant la revendication 4, caractérisé en ce qu'il comprend des éléments de montage supplémentaires couplés avec ledit moyen de génération de mot numérique pour produire un signal de luminance de courant continu. 6 Montage suivant la revendication 4, caractérisé en ce que les mots numériques sont appliqués à un réseau de pondération résistif pour produire un signal vidéo à échelle de gris. 7 Montage suivant la revendication 4, caractérisé en ce que les mots numériques sont des mots de quatre bits et en ce que ladite fréquence prédéterminée est égale à 4 f. 8 Montage suivant la revendication 7, caracté- risé en ce que le moyen de mise en série comprend un multiplexeur commandé en synchronisme avec la fréquence f. 9 Montage suivant la revendication 8, IAS caractérisé en ce que le moyen de conversion comprend un inverseur couplé avec une sortie du multiplexeur. Montage suivant la revendication 9, caractérisé en ce qu'il comprend des éléments de montage supplémentaires couplés avec le moyen de génération de mot numérique pour produire un signal de luminance de courant continu. 11 Montage suivant la revendication 4, caractérisé en ce que le moyen de génération de mot numé- rique comprend: une source de données numériques pour commander l'affichage; un premier registre couplé de manière à recevoir des données de ladite source; un multiplexeur pour effectuer une sélection entre deux bus, la sortie de ce multiplexeur étant couplée avec le moyen de mise en série et lesdits bus étant couplés avec ledit premier registre; et un registre à décalage couplé de manière à recevoir des données de ladite source, ce registre à décalage produisant un signal numérique mis en série pour commander ledit multiplexeur. 12 Montage suivant la revendication 11, caractérisé en ce qu'il comprend une mémoire de caractères pour stocker des données représentatives de caractères alphanumériques, cette mémoire étant couplée de manière à recevoir une adresse de ladite source de données et la sortie de ladite mémoire étant couplée avec ledit registre à décalage. 13 Montage suivant la revendication 12, caractérisé en ce que, lorsque le premier registre précité est désactivé, l'un des deux bus précédemment mentionnés est verrouillé de manière à produire exclusivement des "uns' binaires, tandis que l'autre de ces bus fournit exclusivement des zéros binaires. 14 Montage suivant la revendication 13, caractérisé en ce que le registre à décalage précité est commandé par une pluralité de signaux d'horloge tous synchronisés avec la fréquence f.