DE3750920T2 - Anzeigeendgerät in einem digitalen Datensystem. - Google Patents
Anzeigeendgerät in einem digitalen Datensystem.Info
- Publication number
- DE3750920T2 DE3750920T2 DE3750920T DE3750920T DE3750920T2 DE 3750920 T2 DE3750920 T2 DE 3750920T2 DE 3750920 T DE3750920 T DE 3750920T DE 3750920 T DE3750920 T DE 3750920T DE 3750920 T2 DE3750920 T2 DE 3750920T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- main computer
- display device
- protocol
- term
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000005540 biological transmission Effects 0.000 claims description 39
- 238000012546 transfer Methods 0.000 claims description 30
- 238000012545 processing Methods 0.000 description 14
- 230000004044 response Effects 0.000 description 12
- 230000000007 visual effect Effects 0.000 description 11
- 238000000034 method Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 101000772194 Homo sapiens Transthyretin Proteins 0.000 description 1
- 101710200977 Thioredoxin reductase Proteins 0.000 description 1
- 102100029290 Transthyretin Human genes 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/153—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using cathode-ray tubes
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Controls And Circuits For Display Device (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Digital Computer Display Output (AREA)
Description
- Die vorliegende Erfindung betrifft Digitaldaten- und Textverarbeitungssysteme, insbesondere in ihnen verwendete Endgeräte.
- Eine der üblichsten Ausführungen herkömmlicher Endgeräte ist das "intelligenzlose" Endgerät. Ein "intelligenzloses" Endgerät wird so bezeichnet, weil es keine lokale Datenverarbeitung außerhalb dessen ausführt, was zum Empfangen der Daten im Endgerät und zur Weitergabe derselben an einen Digitalrechner oder zum Empfangen der Daten vom Digitalrechner und Anzeigen derselben am Endgeräteschirm erforderlich ist. Eine Kommunikation zwischen dem "intelligenzlosen" Endgerät und dem Digitalrechner geschieht über Protokolle. Verschiedene Protokolle spezifizieren die zwischen dem Digitalrechner und dem Endgerät übertragenen Daten, ermöglichen dem Digitalrechner, die Arbeitsweise des Endgerätes zu steuern, und zeigen dem Digitalrechner den Zustand des Endgerätes an. Eine übliche Klasse "intelligenzloser" Endgeräte umfaßt Endgeräte nach ANSI-Normen, die mittels Protokollen gesteuert werden, welche mit den ANSI-Normen X3.4, X3.41 und X3.64 kompatibel sind.
- Mit dem Sinken der Kosten und der Zunahme der Geschwindigkeit und Leistung bei Mikroprozessoren, Anzeigesteuerungen und Speichern wurden die "intelligenzlosen" Endgeräte "intelligenter". Ein Beispiel eines solchen "intelligenten" Endgerätes ist das IBM 3163. Dieses und ähnliche Endgeräte nach ANSI-Normen weisen heute ausreichenden Anzeigespeicher auf, um mehr Daten zu halten, als einem Endgeräteschirmvoll entspricht. Bei solchen Endgeräten ist der Anzeigespeicher in Seiten unterteilt, und ein Benutzer des Endgerätes kann angeben, welche Seite des Anzeigespeichers angezeigt werden soll. Das 3163er Endgerät und andere dieser Endgeräte ermöglichen auch die Unterteilung des Endgeräteschirms in Darstellungsfelder. Ein Darstellungsfeld ist ein "Fenster" auf einer Seite, und folglich kann ein Endgerät mit Darstellungsfeldern Daten von mehr als einer Seite zur gleichen Zeit anzeigen.
- Andere Gebiete, in denen eine Umwandlung von "intelligenzlosen" zu intelligenteren Endgeräten stattgefunden hat, sind u.a. die Fähigkeit, Daten nicht nur zwischen dem Endgerät und dem Rechner, sondern auch zwischen dem Rechner und einem an das Endgerät angeschlossenen Zusatzgerät zu übertragen, und die Fähigkeit, mehr als eine Schriftart anzuzeigen - vgl. ANSI-Norm C3.64 - 1979. Diese Norm wurde für neun Ein-Ausgabegeräte mit Zusatzgeräten vorgeschlagen. Gemäß Seite 42 besteht ein Verfahren zur Kommunikation mit dem Zusatzgerät durch das MEDIA COPY-Protokoll (5.57). Durch die Benutzung dieses Protokolls kann der vom Sichtgerät empfangene Datenstrom zum Zusatzgerät geleitet werden, oder es kann eine Kopie des empfangenen Datenstroms an das Zusatzgerät geleitet werden. Oder es kann der vom Sichtgerät übertragene Datenstrom vom Zusatzgerät empfangen werden. Darauf wird insbesondere auf Seite B-7, Absatz B10 hingewiesen. Es ist zu erkennen, daß herkömmliche Sichtgeräte im wesentlichen einen Schalter aufwiesen, mit dem sich entweder der Hauptrechner mit dem Anzeigegerät oder mit dem Zusatzgerät verbinden ließ. Auf all diesen Gebieten hat der Stand der Technik bestimmte Schwierigkeiten ungelöst gelassen.
- Diese Schwierigkeiten werden mit dem erfindungsgemäßen verbesserten Endgerät, wie in den beigefügten Ansprüchen definiert, angesprochen.
- Die vorliegende Erfindung bezieht sich auf Endgeräte zur Verwendung in Digitalrechnersystemen, insbesondere auf "intelligenzlose" Endgeräte. Im verbesserten Endgerät gemäß der vorliegenden Erfindung können eine oder mehrere Seiten definiert werden. Veränderbare Anzeigespeicherbereiche können auf eine definierte Seite abgebildet werden oder es kann eine definierte Seite auf überhaupt keinen Anzeigespeicher abgebildet werden. Jede Seite kann ein einer Stelle auf ihr zugewiesenes Darstellungsfeld aufweisen. Das Darstellungsfeld kann eine veränderbare Zeilenzahl oder gar keine Zeilen umfassen. Unabhängige Protokolle definieren Seiten, definieren Darstellungsfelder und ordnen Seiten Darstellungsfelder zu. Eine Vorrichtung im Endgerät stellt sicher, daß wenn eine Zeile in einem Darstellungsfeld keine entsprechende Zeile in der Seite hat, der das Darstellungsfeld zugeordnet ist, die Zeile im Darstellungsfeld Leerstellen anzeigt. Das verbesserte Endgerät macht es auch möglich, daß ein Darstellungsfeld der aktiven Position automatisch folgt, d.h. der Position im Anzeigespeicher, an der gegenwärtig Operationen ausgeführt werden, und ermöglicht es, daß die aktive Position von der Cursorposition gelöst wird. Schließlich kann ein Bereich in einer Seite gerollt werden, und ein Bereich in einer Seite kann in einen Bereich jeder anderen Seite kopiert werden.
- Das verbesserte Endgerät gemäß der vorliegenden Erfindung ermöglicht es ferner, das Endgerät und ein mit ihm verbundenen Zusatzgerät unabhängig als Quelle oder als Ziel bzw. Empfänger von zwischen einem Digitalrechner und dem Endgerät übertragenen Daten vorzuschreiben. Somit kann das Endgerät ein Ziel von Daten sein, die vom Rechner empfangen wurden, wogegen das Zusatzgerät eine Datenquelle für den Rechner ist, und umgekehrt. Weitere Verbesserungen auf dem Gebiet der Datenübertragung zwischen dem Rechner und dem Endgerät oder dem Zusatzgerät umfassen eine verbesserte Flußsteuerung, die es dem Rechner im allgemeinen ermöglicht, den Fluß vom Zusatzgerät zum Endgerät umzuschalten, eine verbesserte Zugriffssteuerung, die im allgemeinen verhindert, daß das Zusatzgerät oder das Endgerät das andere Gerät von der Verbindung mit dem Rechner ausschließt, und die Verwendung des ANSI INT-Codes, wodurch der Rechner die Steuerung des Endgeräte in jeder Situation übernehmen kann. Ein Transparenzmodus ermöglicht ferner die automatische Umwandlung von 8-Bit-Protokollen in ANSI-äguivalente Präfix+Code-Sequenzen, wodurch die Arbeitsweise des Endgerätes mit einer 7-Bit-Übertragungsleitung zwischen dem Endgerät und dem Rechner oder mit Zusatzgeräten ermöglicht wird, die andere als ANSI-Codes benutzen.
- Es ist somit Aufgabe der Erfindung, ein verbessertes Endgerät zu schaffen, eine verbesserte Steuerung der Datenübertragung zwischen einem Digitalrechner, einem Endgerät und einem mit dem Endgerät verbundenen Zusatzgerät, und eine transparente Datenübertragung zwischen dem Zusatzgerät und dem Endgerät.
- Weitere Aufgaben und Vorteile der vorliegenden Erfindung ergeben sich für den Fachmann nach Bezugnahme auf die hier enthaltene detaillierte Beschreibung einer bevorzugten Ausführungsform und auf die Zeichnungen, in denen zeigt:
- Fig. 1 ein Entwurfsblockschaltbild eines das verbesserte Endgerät benutzenden Systems,
- Fig. 2 eine logische Gesamtansicht des verbesserten Endgeräts,
- Fig. 3 ein Blockschaltbild einer lmplementierung einer bevorzugten Ausführungsform des verbesserten Endgerätes,
- Fig. 4 ein vereinfachtes Diagramm der Datenübertragungswege im verbesserten Endgerät,
- Fig. 5 ein Diagramm von Steuerungsdaten für die Datenübertragungswege,
- Fig. 6 eine Liste der Betriebsart-Setz- und -Rücksetzbefehle und der Betriebsarten,
- Fig. 7 eine Liste der Datenübertragungsprotokolle.
- Die nachstehende Beschreibung einer bevorzugten Ausführungsform des erfindungsgemäßen verbesserten Endgerätes gibt zuerst eine Übersicht über ein System, in dem das Endgerät benutzt wird, sodann Gesamtansichten der logischen Struktur und einer Implementierung des verbesserten Endgerätes, und schließlich detaillierte Beschreibungen der Bauelemente des verbesserten Endgerätes für die Datenübertragung und die Anzeige.
- Das verbesserte Endgerät gemäß der vorliegenden Erfindung ist ein sogenanntes "intelligenzloses" Endgerät zur Benutzung mit einem Digitalrechnersystem. Das Endgerät wird als "intelligenzloses" Endgerät bezeichnet, weil es keine lokale Datenverarbeitung außerhalb dessen vornimmt, was zum Empfangen der Daten am Endgerät und zur Abgabe derselben an einen Digitalrechner oder zum Empfangen der Daten vom Digitalrechner und zur Anzeige derselben am Endgeräteschirm erforderlich ist.
- Fig. 1 zeigt ein System, welches das verbesserte Endgerät benutzt. Das Endgerät TERM 103 ist durch eine Übertragungsleitung mit serieller Betriebsweise (SL) 111 mit einem Hauptrechner (HC) 101 verbunden. TERM 103 umfaßt ein Anzeigegerät mit Kathodenstrahlröhre (DISP) 105 und ist durch eine weitere SL 113 mit einer Tastatur (KB) 107 und durch eine SL 115 mit einem Zusatzgerät (AD) 109 verbunden. HC 101 kann ein beliebiger Rechner sein, beispielsweise ein von Wang Laboratories, Inc. hergestellter VS-Rechner. Das AD 109 kann ein beliebiges Gerät sein, das Daten seriell übertragen oder empfangen kann, wird aber ganz allgemein ein Drucker oder ein anderes Papierkopie-Anzeigegerät sein. Bei einer bevorzugten Ausführungsform ist TERM 103 ein Zeichen-Endgerät, SL 111 ist eine RS- 232-Übertragungsleitung, und die Verbindung über SL 111 mit dem HC 101 geschieht über Protokolle, die mit den ANSI-Protokollen X3.4, X3.41 und X3.64 kompatibel sind. Die Protokolle umfassen Protokolle für Zeichen, Protokolle zur Steuerung der Arbeitsweise des TERM 103, Protokolle zum Steuern der Leitwege zwischen HC 101 und TERM 103 oder AD 109, und Protokolle, mittels derer HC 101 Informationen von TERM 103 über dessen Status empfangen kann.
- Die Arbeitsweise des TERM 103 ist folgende: Wenn ein Benutzer der KB 107 auf der KB 107 eine Taste drückt, packt TERM 103 die Zeichen in das richtige Protokoll und sendet das Protokoll über die SL 111 an den HC 101. Wünscht ein auf dem HC 101 ablaufendes Programm die Anzeige eines Zeichens auf TERM 103, sendet es ein Protokoll für das Zeichen über SL 113 an TERM 103, welches das Zeichen an der richtigen Stelle im DISP 105 anzeigt. Wünscht das Programm eine Änderung der Arbeitsweise des TERM 103 oder die Ermittlung des Zustandes vom TERM 103, benutzt es für diese Zwecke die richtigen Protokolle.
- Das DISP 105 im TERM 103 kann Daten aus bis zu acht im TERM 103 gespeicherten Seiten anzeigen. Welche Seiten angezeigt werden und welche Daten auf einer Seite angezeigt werden, wird durch Darstellungsfelder bestimmt. Ein Darstellungsfeld ist eine Gruppe Zeilen im DISP 105, die mit einer Gruppe Zeilen auf einer bestimmten Seite verbunden sind. Die dem Darstellungsfeld auf der Seite zugeordneten Zeilen erscheinen auf den Zeilen im DISP 105, die dem Darstellungsfeld zugeordnet sind. Die Größe der Seiten, die Größe der Darstellungsfelder, die Zuordnung eines Darstellungsfeldes zu einer Zeilengruppe auf einem Bildschirm, und die Zuordnung eines Darstellungsfeldes und einer Zeilengruppe auf einer Seite werden alle durch Protokolle aus dem HC 101 gesteuert.
- Das AD 109 kann entweder vom Benutzer des TERM 103 oder durch ein auf HC 101 ablaufendes Programm gesteuert werden. Im erstgenannten Fall kann AD 109 auf DISP 105 angezeigte Datenzeilen oder -bildschirme drucken; im letztgenannten Fall kann HC 101 Daten an AD 109 geben oder von ihm empfangen. Wenn HC 101 Daten liefert, gehen die Daten über SL 111 an TERM 103, das sie in der für AD 109 erforderlichen Weise umpackt und dann über SL 115 an das AD 109 sendet. Wenn HC 101 Daten vom AD 109 empfängt, gehen die Daten über SL 115 an TERM 103, das die für HC 101 erforderliche Umpackungen vornimmt und dann die Daten über SL 111 an HC 101 sendet. Ziel und Richtung des Datenflusses zwischen HC 101, TERM 103 und AD 109 wird mittels Protokollen gesteuert, die von HC 101 an TERM 103 und von TERM 103 an HC 101 gesendet werden. Bei dem verbesserten Endgerät ermöglichen die Protokolle gleichzeitige Übertragung in einer Richtung zwischen HC 101 und TERM 103 und in der anderen Richtung zwischen AD 109 und HC 101.
- Logisch gesehen ist TERM 103 mittels einer Gruppe von Geräten implementiert, die sich einen gemeinsamen Endgeräte-Adressenraum teilen. Fig. 2 zeigt die Geräte, den gemeinsamen Endgeräte-Adressenraum (TAS) 203 und stellt dar, wie die Geräte über den Adressenraum und durch Unterbrechungssignale INT 209 miteinander in Beziehung treten.
- Die Gesamtsteuerung des TERM 103 liegt bei einem Mikroprozessor (uP) 201. Der uP 201 ist an den TAS 203 über einen ADDR- Bus 205 angeschlossen, der Adressen vom uP 201 an den TAS 203 leitet, und einen DATA-Bus 207, der Daten vom uP 201 an die Adresse im TAS 203 liefert, die durch die Adresse auf ADDR 205 spezifiziert ist, oder Daten von diesem Speicherplatz im TAS 203 an den uP 201 abruft, je nachdem, ob der uP 201 eine Lese- oder eine Schreiboperation im TAS 203 ausführt. Der uP 201 enthält Register zum Speichern von an den DATA-Bus 207 auszugebenden oder vom DATA-Bus 207 zu empfangenden Daten und von an den ADDR-Bus 205 auszugebenden Adressen, sowie Arithmetik-Logik-Einheiten ALU zum Handhaben von Daten und Adressen. Die vom uP 201 ausgeführten Operationen sind durch Programme in PROG 235 des TAS 203 bestimmt. Der uP 201 empfängt ferner Unterbrechungssignale bei INT 209 von anderen Geräten im TERM 103. Abhängig von einem solchen Unterbrechungssignal führt der uP 201 einen Unterbrechungscode im PROG 235 aus. Für die Ausführung der Programme erforderliche Daten, z.B. Stapelregister und Arbeitsbereiche, sind in PROGD 237 enthalten. CTLD 239 enthält Steuerungsdaten, die den gegenwärtigen Status von TERM 103 an den uP 201 bekanntgeben.
- Die Datenübertragung zwischen TERM 103 und KB 107 wird durch den Tastaturanschluß (KBP) 231 verwaltet. Der KBP 231 enthält Register (KBPRS) 233, die Teil des TAS 203 sind und daher für den uP 201 erreichbar sind. Bei einer bevorzugten Ausführungsform enthalten die KBPRS 233 ein Übertragungsregister für ein Datenbyte, ein Empfangsregister für ein Datenbyte, ein Register für ein Befehlswort und ein Register für ein Zustandswort. Wenn der uP 201 Daten an die KB 107 überträgt, beispielsweise um bestimmte Merkmale der KB 107 zu setzen, gibt der uP 201 zuerst ein Befehlswort, das angibt, daß Daten zur KB 107 gehen, und dann eine Folge von Datenbyte in das Übertragungsregister. Beim Empfang jedes Datenbyte wandelt der KBP 231 das Datenbyte aus der parallelen in die serielle Form um und gibt es an die KB 107 aus. Der Zustand der Übertragung wird im Zustandsregister gespeichert, in dem er vom uP 201 gelesen werden kann.
- Schlägt ein Benutzer eine Taste auf der KB 107 an, empfängt der KBP 231 den dem Tastendruck entsprechenden Code über die SL 113. Der KBP 231 wandelt den Code aus der seriellen in die Parallele Form um, gibt den parallelen Wert in das Empfangsregister, setzt das Zustandsregister zur Angabe, daß ein Tastendruckcode empfangen worden ist, und sendet eine Unterbrechung über INT 209 an den uP 201, der auf die Unterbrechung durch Ausführen eines Unterbrechungsverarbeitungscodes im PROG 235 reagiert. Der Unterbrechungsverarbeitungscode prüft das Zustandsregister in den KBPRS 233 auf die Ursache der Unterbrechung. Wurde sie durch den Empfang eines Tastaturcodes verursacht, verschiebt der Unterbrechungsverarbeitungscode den empfangenen Tastendruckcode aus den KBPRS 233 zum Tastaturpufferspeicher (KEYB) 249, wo er zur weiteren Verarbeitung durch den uP 201 verfügbar gehalten wird.
- Die Datenübertragung zwischen dem HC 101 und TEPM 103 wird durch den Hauptrechneranschluß (HOSTP) 223 verwaltet, die Datenübertragung zwischen dem AD 109 und TERM 103 durch den Anschluß AUXP 227. Diese Anschlüsse arbeiten im allgemeinen in derselben Weise wie der KBP 231: Register in den Zusatzanschlußregistern (AUXPRS) 229 und den Hauptrechneranschlußregistern (HOSTPRS) 225 enthalten zu übertragende Daten, ein Befehlswort und ein Zustandswort, wie es für den KBP 231 beschrieben wurde, und die Übertragung geschieht in derselben Weise. Wenn somit TERM 103 Datenbyte an den HC 101 sendet, schreibt der uP 201 ein Befehlswort in die HOSTPRS 225 und gibt in diese Register eine Bytefolge; sendet der HC 101 ein Datenbyte an das TERM 103, empfängt HOSTPRS 225 das Byte, setzt ein Zustandsregister zur Anzeige dieses Umstandes und generiert ein Unterbrechungssignal auf INT 209 an den uP 201. Der Unterbrechungsverarbeitungscode, den der uP 201 als Reaktion auf die Unterbrechung ausführt, kopiert das Byte aus den HOSTPRS 225 an eine Hauptrechnerempfangswarteschlange (HRXQ) 241, wo es zur weiteren Verarbeitung verfügbar ist. Weitere Warteschlangen, die in Verbindung mit HOSTP 223 und AUXP 227 in der vorstehend für HRXQ 241 beschriebenen Weise benutzt werden, sind eine Hauptrechnerübertragungswarteschlange (HTXQ) 243, die durch HOSTP 223 an den HC 101 zu übertragende Daten enthält, eine Zusatzgerätempfangswarteschlange (ARXQ) 245, die vom AD 109 im AUXP 227 empfangene Daten enthält, und Zusatzgerätübertragungswarteschlange (ATXQ) 247, die durch AUXP 227 an das AD 109 zu übertragende Daten enthält. Zusätzlich empfängt eine Endgerätempfangswarteschlange (TRXQ) 240 Daten vom TERM 103, die für die Weiterleitung zum HC 101 in die HTXQ 243 zu bringen sind.
- Anzeigen im DISP 105 werden durch einen Anzeigegenerator (DISPG) 211 generiert. Die zum Generieren der Anzeige benutzten Daten sind in einem Anzeigespeicher (DISPM) 213 und einem Zeichengeneratorspeicher (CGM) 215 enthalten. Der DISPM 213 enthält Datenzeilen, die im DISP 105 anzuzeigen sind. Jedes Zeichen in einer Zeile ist durch einen 1-Byte-Zeichencode und einen 1-Byte-Attributcode dargestellt, der angibt, wie das durch den Zeichencode spezifizierte Zeichen anzuzeigen ist. Wie weiter oben angegeben, kann DISPM 213 in bis zu acht Seiten unterteilt werden. Der CGM 215 enthält eine visuelle Darstellung, die jedem Zeichencode entspricht. Empfängt der CGM 215 ein Zeichencode als Eingang, gibt er die visuelle Darstellung an den DISPG 211 zur Anzeige im DISP 105 aus. Die Arbeitsweise des DISPG 211 wird durch Anzeigesteuerregister (DCTLR) 219 in einer Weise gesteuert, die der für den KBP 231 beschriebenen ähnlich ist. Wenn der uP 201 Daten auf dem DISP 105 anzeigen möchte, lädt er zuerst Register in DCTLR 219 zur lnitialisierung des DISPG 211. Sodann lädt er die Zeichencodes für die Daten und die Codes für die Attribute in DISPM 213. Als nächstes lädt er in eine Zeilentabelle in den Anzeigedaten (DISPD) 221 Zeiger, welche die anzuzeigenden Zeilen im DISPM 213 vorschreiben. Sodann lädt er einen Zeiger zur Zeilentabelle in DCTLR 219 und gibt schließlich einen Befehl zum Einschalten des DISPG 211 aus. Auf den Befehl reagiert der DISPG 211 durch Abrufen jedes Zeichencodes und jedes entsprechenden Attributcodes in jeder in der Zeilentabelle spezifizierten Zeile und durch Anzeigen derselben in DISP 105, wobei er den CGM 215 zum Umwandeln des Zeichencodes in seine visuelle Darstellung verwendet und den Attributcode zum Modifizieren der Weise benutzt, in der die visuelle Darstellung angezeigt wird. Der DISPG 211 arbeitet in dieser Weise weiter, bis der uP 201 die Anzeige deaktiviert oder bis eine Bedingung entsteht, welche die Intervention des uP 201 erfordert. Während der DISPG 211 in der gerade erläuterten Weise arbeitet, kann der uP 201 die Anzeige auf der DISP 105 durch Ändern des Inhaltes vom DISPM 213 oder durch Modifizieren der Zeilentabelle so modifizieren, daß DISPG 211 auf der Anzeige 105 verschiedene Zeilen aus DISPM 213 anzeigt. Wenn der DISPG 211 die Intervention des uP 201 erfordert, gibt er an den uP 201 ein INT 209, auf das der uP 201 durch Ausführen eines Unterbrechungscodes reagiert, der die Zustandsregister im DCTLR 219 überprüft und die Aktion ausführt, die zur Behandlung des angezeigten Zustands notwendig ist.
- Wie weiter oben angegeben, steuert der HC 101 das TERM 103 mittels Protokollen, die über die SL 111 an das TERM 103 gesandt werden. Die Protokolle können ein einzelne Byte lang oder Mehrbyte-Protokolle sein. Die Protokolle enthalten Codes, die auf der DISP 105 anzuzeigende Zeichen angeben, Steuerungscodes, die vom TERM 103 auszuführende Operationen angeben, und Befehle. Die Befehle werden durch Befehlsteuercodes eingegeben und enthalten Parameterbyte, welche im Befehl benutzte Parameter darstellen, und Befehlsspezifikationsbyte. In den Protokollen benutzte bestimmte Codes werden benutzt, um anzuzeigen, daß ein Protokoll eine private Bedeutung hat.
- Bei jedem Empfang eines Byte von HC 101 in HRXQ 241 prüft der uP 201, wie das Byte zu verarbeiten ist. Bei Protokollen, die anzuzeigende Zeichen angeben, werden die Zeichen einfach in den DISPM 213 geschrieben; bei Einzelbyte-Steuerungscodes werden Zustandsvariable im CTLD 239 so geändert, daß sie den neuen Zustand des TERM 103 vorschreiben, und der uP 201 beginnt die Betreibung des Endgerätes, wie es für den Steuerungscode erforderlich ist. Bei einem Befehl reagiert der uP 201 auf den Befehlsteuercode und das Befehlsbyte durch Sammeln der Parameterbyte und des Befehlsspezifizierers im Befehlspufferspeicher (COMB) 251. Der uP 201 führt dann den Befehl wie durch den Befehlsspezifizierer und die Parameterbyte vorgeschrieben aus.
- In den Befehlsprotokollen, auf die TERM 103 reagiert, sind Befehle enthalten, die den Datenfluß zwischen HC 101, TERM 103 und AD 109 bestimmen, ein Befehl, der Seiten im DISPM 213 definiert, ein Befehl, der Darstellungsfelder definiert, ein Befehl, der ein Darstellungsfeld einer Seite zuordnet, und Befehle, die bestimmen, wie die Abbildung von Seiten und Darstellungsfeldern mit Änderungen des einschlägigen Speicherplatzes im DISPM 213 in Wechselwirkung tritt.
- Fig. 3 gibt eine Gesamtansicht einer bevorzugten Implementierung des TERM 103. Der uP 201 ist mittels eines uP 301, einem Mikroprozessor MC 6809C, hergestellt von der Motorola, Inc., implementiert. Der MC 6809C ist im Programmierhandbuch für Mikroprozessor MC6809-MC6809E der Motorola, Inc., 1981 beschrieben, das durch Bezugnahme zum Inhalt dieser Anmeldung erklärt wird. Der uP 301 empfängt zwei verschiedene Unterbrechungssignale, eine Unterbrechungs-Anforderung (IRQ) 339 und eine Schnellunterbrechungs-Anforderung (FIRQ) 338. Bei einer bevorzugten Ausführungsform empfängt IRQ 339 Unterbrechungen, die vom Tastaturanschluß (KBP 317) und den Hauptrechner- und Zusatzgerätanschlüssen (DUART 319) generiert werden, wogegen FIRQ 338 Unterbrechungen von der Anzeigesteuerung (DC) 315, einem Bauelement des Anzeigegenerators, empfängt. TAS 203 ist mittels eines ROM 307, eines RAM 309, eines nicht flüchtigen RAM (NVRAM) 311, eines Anzeige-RAM (DISPR) 323, des Zeichengeneratorspeichers (CGM) 329 und Befehls-, Daten- und Zustandsregistern in KBP 317, DUART 319 und DC 317 implementiert. Daten werden zwischen dem uP 301 und den Bauelementen des TAS 203 durch einen 8-Bit-DBUS 305 übertragen, und Adressen werden den Bauelementen über einen 16-Bit-ABUS 303 zugeleitet.
- Der ROM 307 enthält Programme, die vom uP 301 ausgeführt werden, und entspricht folglich dem PROG 235. Der RAM 309 wird für allgemeine Datenspeicherung benutzt und entspricht PROGD 237, HRXQ 241, HTXQ 243, TRXQ 240, ARXQ 245, ATXQ 247, COMB 251, KEYB 249, DISPM 213 und Teilen von CTLD 239 und DISPD 221. Beim Abschalten von TERM 103 verliert der NVRAM 311 seinen Inhalt nicht und wird folglich zum Speichern jener Teile von CTLD 239 und DISPD 221 benutzt, die in den Betriebspausen von TERM 103 zu bewahren sind. Schließlich entspricht CGM 329 dem CGM 215.
- Bei einer bevorzugten Ausführungsform enthält CGM 329 ein ROM- und ein RAM-Element, und im TERM 103 ist ferner die Hinzufügung von zwei externen ROM- oder RAM-Kassettenelementen vorgesehen. Die zusätzlichen Elemente enthalten weitere alternative Schriftarten oder Zeichensätze. Im Falle des RAMs kann der uP 301 den RAM mit den visuellen Darstellungen einer alternativen Schriftart oder Zeichensatzes abhängig von einem Protokoll vom HC 301 laden, das die visuellen Darstellungen als Parameter enthält. Die Adressierung von visuellen Darstellungen im CGM 329 geschieht folgendermaßen: Zwei Bit im Attributbyte, das dem an die CRT CTL 331 auszugebenden Zeichen entspricht, wählen eines der vier Elemente des CGM 329; sodann wird die dem Zeichencode entsprechende visuelle Darstellung mittels 12-Bit-Adressen aus 4 Bit an RA 325 und 8- Bit-Zeichencodes an CGD 337 gewählt. Gemäß Fig. 3 kommen die Signale, die ein einzelnes Element wählen, über CGSEL 341 von der CRT CTL 331; Adressen an RA 325 können entweder über einen (nicht dargestellten) Zwischenspeicher vom uP 301 oder von der DC 315 kommen, wogegen Adressen an CGD 337 entweder über den DBUS 305 und einen (nicht dargestellten) Zwischenspeicher vom uP 301 oder vom DISPR 323 kommen können. Adressen vom uP 301 werden benutzt, wenn der uP 301 im CGM 329 liest oder den RAM in CGM 329 lädt; Adressen vom DC 315 und DISPR 323 werden benutzt, wenn das TERM 103 Daten auf der DISP 105 anzeigt. Daten zum Laden des RAM im CGM 329 kommen über den DBUS 305 vom uP 301.
- KBP 317 entspricht KBP 231. Er ist mit einer integrierten Schnittstellenbaustein-Schaltung MC 68B50 für asynchrone Übertragungen implementiert, die von der Motorola, Inc. hergestellt wird und auf Seite 3-495 des Handbuchs über 8-Bit- Mikroprozessor- und Peripheriedaten, Handbuch Nr. DL133, Motorola, Inc., 1983 beschrieben ist. Dieses Handbuch wird durch Bezugnahme zum Inhalt dieser Beschreibung erklärt. DUART 319 umfaßt zwei Anschlüsse und entspricht den beiden AUXP 227 und HOSTP 223. DUART 319 ist mittels einer integrierten Sender-Empfänger-Dualschaltung SCN2681 für asynchrone Datenübertragung implementiert, die von der Signetics, Inc. hergestellt wird. Die DUART 319 ist im Mikroprozessordaten-Handbuch, Signetics, Inc., 1986, S. 2-89 vollständig beschrieben. Auch dieses Handbuch wird durch Bezugnahme zum Inhalt dieser Beschreibung erklärt. Gemäß Fig. 3 werden die im KBP 317 und in der DUART 319 enthaltenen Register mittels Bit 0-3 des ABUS 303 adressiert, und Daten werden an die Register geleitet oder von ihnen empfangen über den DBUS 305.
- Wenn der KBP 317 ein Byte von der KB 107 empfängt, oder die DUART 319 empfängt ein Byte entweder vom HC 101 oder vom AD 109, erzeugt er ein Unterbrechungssignal auf IRQ 339.
- Gemäß Fig. 3 ist die DISP 105 mittels einer Kathodenstrahlröhre CRT 333 implementiert und der DISPG 211 ist mittels der Anzeigesteuerung (DC) 315, eines Zeilen-RAMs (RRAM 323), des CGM 329 und einer Bildschirm-Steuerlogik (CRT CTL) 331 implementiert. Die DC 315 steuert das Anzeigen von Zeichen auf dem CRT 333. Im TERM 103 ist die DC 315 eine von Signetics, Inc. hergestellte weiterentwickelte Videoanzeige-Steuerung SCN2674. Die SCN2674 ist auf S. 2-123 des Mikroprozessordaten-Handbuchs vollständig beschrieben. Die Arbeitsweise der DC 315 wird durch interne Register in der DC 315, die den DCTLR 219 entsprechen, gesteuert. In den internen Registern ist ein Zeiger zur Zeilentabelle und ein Zeiger zum Zeilentabelleneintrag, der den Speicherplatz der gegenwärtig angezeigten Zeile enthält, enthalten. Daten für die Register werden vom DBUS 305 empfangen und Adressen von den Bit 0-2 des ABUS 303. Der Ausgang der DC 315 sind 14 Bit einer Anzeigeadresse (DADD) 321. Die Bit 0-7 der DADD 321 liefern Adressen zum RRAM 323, der die Zeichencodes und die Attribute für die gegenwärtig zur Anzeige auf CRT 333 ausgegebene Zeile enthält. Bit 0-14 liefern Adressen über einen (nicht dargestellten) Zwischenspeicher und den ABUS 303 an TAS 203, die es der DC 315 ermöglichen, Datenzeilen (Zeichencodes und ihre Attribute) vom DISPM 213 im TAS 203 über den DBUS 305 und einen (nicht dargestellten) Zwischenspeicher an den RRAM 323 zu kopieren. Während der Zeit, in der DC 315 eine Datenzeile kopiert, sendet sie ein STOP-Signal 340 aus, das verhindert, daß der uP 301 den ABUS 303 und den DBUS 305 benutzt. Nachdem DC 315 die Datenzeile in den RRAM 323 kopiert hat, bewirkt sie, daß der RRAM 323 die Daten Byte um Byte ausgibt. Der Zeichencode wird zuerst ausgegeben und zwischengespeichert.
- Sodann wird das entsprechende Attributbyte ausgegeben und zwischengespeichert. Der Zeichencode geht über CGD 337 zum CGM 329, der die entsprechende visuelle Darstellung aus dem von den Bit im Attributbyte angesteuerten Element ausgibt. Die visuelle Darstellung geht über Verschiebedaten (SHD) 343 an die CRT CTL 331. Zur gleichen Zeit geht das Attribut über ATTR 335 an die CRT CTL 331. Als Reaktion auf die visuelle Darstellung und das Attribut erzeugt CRT CTL 331 das Zeichen auf dem Bildschirm CRT 333. Nach der Ausgabe der vollständigen Zeile aus dem RRAM 323 in der vorstehend beschriebenen Weise, ruft DC 315 die vom DISPM 213 in der Zeilentabelle spezifizierte nächste Zeile ab. Bei Erreichen des Endes der Zeilentabelle beginnt DC 315 den Zyklus erneut mit der ersten Zeile in der Zeilentabelle. Wird von der DC 315 während der Operation eine Intervention seitens des uP 301 angefordert, sendet sie ein FIRQ-Signal 338 an den uP 301, der darauf durch Ausführen eines Unterbrechungscodes reagiert, der die Register in der DC 315 überprüft, um die Ursache für die Unterbrechung festzustellen.
- Die Arbeitsweise der in Fig. 3 dargestellten Implementierung des TERM 103 ist wie vorstehend vom logischen Standpunkt her beschrieben wurde. Ein Byte aus HC 101 wird in der DUART 319 empfangen, es wird ein IRQ 339 generiert, und der uP 301 führt einen Unterbrechungscode aus, der das Byte in die HRXQ 241 bringt. Der uP 301 prüft das Byte und den gegenwärtigen Zustand des TERM 103, wie er durch Werte im CTLD 239 angegeben ist. Wenn der Zustand angibt, daß das Byte für das AD 109 bestimmt ist, bringt es der uP 301 in die ATXQ 247, aus der es der uP 301 über die DUART 319 an das AD 109 ausgibt. Wenn der gegenwärtige Zustand des TERM 103 angibt, daß das Byte für TERM 103 bestimmt ist, ermittelt der uP 301 aus seinem Wert und aus dem gegenwärtigen Zustand des TERM 103, ob es ein Zeichencode, ein Steuerungscode, ein Parameter oder ein Byte eines Befehlsspezifizierers ist. Ist es ein Zeichencode, bringt der uP 301 den Code an einen als aktive Position bezeichneten Speicherplatz im DISPM 213. In den DISPD 221 ist ein Zeiger zur aktiven Position gespeichert. Ist es ein Steuerungscode, ändert der uP 301 den Zustand je nach Erfordernis im CTLD 239 oder dem DISPD 221. Ist es ein Parameterbyte, bringt es der uP 301 in den COMB 251. Ist es ein Befehlsspezifizierer, führt der uP 301 den vorgeschriebenen Befehl unter Benutzung der Parameter aus. Bei der Ausführung von Befehlen durch den uP 301 arbeitet die DC 315 wie weiter oben beschrieben zur Anzeige der durch die Zeilentabelle vorgeschriebenen Zeilen aus dem DISPM 213.
- Als Reaktion auf ein Byte aus der KB 107, generiert der KBP 317 eine Unterbrechung, wie weiter oben beschrieben. Die Unterbrechungsverarbeitungsroutine bringt das Byte in den KEYB 249, der uP 201 prüft es dann und bringt es in den meisten Fällen in die TRXQ 240, aus der es zur Übertragung zum HOSTPRS 225 zur HTXQ 243 geht. Die DUART 319 sendet es dann zum Hauptrechner 101. Bei einem Byte aus AUXP 227 läuft im wesentlichen die gleiche Ereignisfolge ab, mit der Ausnahme, daß in diesem Falle die Unterbrechungsverarbeitungsroutine das Byte in die ARXQ 245 bringt, wo es geprüft und in den meisten Fällen nach HTXQ 243 übertragen wird, von wo es, wie gerade beschrieben, zum HC 101 weitergeleitet wird.
- Ein Merkmal des TERM 103 ist, daß HC 101 entweder TERM 103 oder AD 109 als Ziel der von ihm an TERM 103 übertragenen Daten wählen kann und TERM 103 oder AD 109 unabhängig als Quelle der Daten wählen kann, die er von TERM 103 empfängt. Im folgenden werden die Wege beschrieben, über die Daten zwischen TERM 103, AD 109 und HC 101 übertragen werden können. Sodann wird in der Beschreibung erläutert, wie Wege gewählt werden, wie der Datenfluß auf ihnen gesteuert wird, und wie TERM 103 und AD 109 je garantierten Zugang zum HC 101 haben.
- Fig. 4 ist eine vereinfachte Zeichnung der Wege, über welche Daten zwischen HC 101 und TERM 103 oder AD 109 übertragen werden können. Strichpunktierte Linien in der Figur deuten den Weg 403 an für an den HC 101 gesandte Daten, und durchgezogenen Linien den Weg 401 für vom HC 101 empfangene Daten.
- Beginnend mit dem Weg 401 vom HC 101: Daten auf diesem Weg werden vom HC 101 zum Hauptrechner-Eingabebyte-Register (HIBR) 405, einem der Register HOSTPRS 225, im HOSTP 223 übertragen. Wie weiter oben erläutert, generiert HOSTP 223 eine Unterbrechung und uP 201 überträgt das empfangene Byte zum Ende einer Warteschlange in HRXQ 241. Das Ende der Warteschlange ist durch einen HRXW-Zeiger 417 markiert. Was dann folgt, ist abhängig davon, ob TERM 103 oder AD 109 als Ziel bzw. Empfänger des Byte gewählt worden ist. Im ersteren Falle, wenn das Byte den Beginn der Warteschlange erreicht, der durch einen HRXR-Zeiger 415 angegeben ist, verschiebt der uP 201 das Byte von der HRXQ 241 nach DATA 409, einer Variablen im CTLD 239, der zum Speichern des Byte während seiner Verarbeitung benutzt wird. Der uP 201 verarbeitet dann das Byte entsprechend seinem Wert und dem Zustand des TERM 103. Ist als Ziel das AD 109 gewählt, verschiebt der uP 201 das Byte von der HRXQ 241 zum Ende der ATXQ 247, das durch den ATXW- Zeiger 425 angegeben ist, und wenn das Byte den Beginn der ATXQ 247 erreicht, der durch einen ATXR-Zeiger 423 markiert ist, überträgt der uP 201 das Byte von da zum Zusatzgerät-Ausgabebyte-Register (AOBR) 411, einem der Register der AUXPRS 229. In Antwort hierauf überträgt AUXP 227 das Datenbyte zum AD 109.
- Weiter mit dem Weg 403 zum HC 101. Wenn die Datenquelle auf diesem Weg das AD 109 ist, empfängt AUXP 227 die Daten Byte um Byte aus dem AD 109. Jedes Byte wird in einem Zusatzgerät- Eingabebyte-Register (AIBR) 413 empfangen, und wenn AUXP 227 das Byte empfängt, sendet er eine Unterbrechung an den uP 201. Der uP 201 überträgt das Byte an das Ende der Warteschlange in ARXQ 245, das durch den ARXW-Zeiger 429 angegeben ist. Wenn das Byte den Beginn der Warteschlange erreicht, der durch den Zeiger ARXR 427 angegeben ist, überträgt der uP 201 das Byte zum Ende der Warteschlange in HTXQ 243, das durch den Zeiger HTXW 421 angegeben ist. Wenn das Byte den Beginn der Warteschlange erreicht, der durch den Zeiger HTXR 419 markiert ist, überträgt es der uP 201 zum Hauptrechner-Ausgabebyte-Register (HOBR) der HOSTPRS 225 zusammen mit einem Übertragungsbefehl, und HOSTP 223 reagiert auf den Befehl durch die Übertragung des Byte an den HC 101. Wenn die Datenquelle das Endgerät ist, hat der uP 201 das Datenbyte in eine Endgerät-Empfangs-Warteschlange (TRXQ) 240 gebracht. In die TRXQ 240 gebrachte Byte gehen zum Ende der Warteschlange, das durch den Zeiger TRXW 433 markiert ist, und der uP 201 liest Byte am Beginn der Warteschlange, der durch TRXR 431 markiert ist, und gibt sie an das Ende der Warteschlange in HTXQ 243, von wo aus sie in der oben beschrieben Weise weitergeleitet werden.
- Byte auf dem Weg 401, deren Empfänger das AD 109 ist, werden im TERM 103 nur dann interpretiert, wenn sie Einfluß auf den Weg ausüben. Die einzigen Codes, die in diese Klasse fallen, sind INT und NULL, die Flußsteuerungscodes XON und XOFF und der Befehl CSI 4 i, der das Ziel des Weges 401 in TERN 103 ändert. Bei einer bevorzugten Ausführungsform werden diese Codes erfaßt und verarbeitet durch den Unterbrechungscode, der auf die Unterbrechung vom HOSTP 223 anspricht, wenn das Byte empfangen wird.
- Die Datenwege 401 und 403 werden mittels Protokollen gesteuert, die zwischen HC 101 und TERM 103 gesendet werden. In Antwort auf diese Protokolle setzt der uP 201 bestimmte Variable in CTLD 239 und steuert das TERM 103 entsprechend den Werten der Variablen. Die Protokolle und die von ihnen gesetzten Variablen steuern die Quelle und den Empfänger der übertragenen Daten, den Datenfluß auf einem Weg und den Zugriff auf einen Weg durch das TERM 103 bzw. das AD 109. Die Variablen sind in Fig. 5, die Protokolle und Betriebsarten in Fig. 6 und 7 dargestellt.
- Die Beschreibung beginnt mit einer Übersicht über die Protokolle im TERM 103. Die in Fig. 6 dargestellten Betriebsartprotokolle sind übliche Befehlsprotokolle für TERM 103. Wie an den Protokollen 601 und 603 zu erkennen, beginnen alle Befehlsprotokolle mit einem Befehlsfolgeindikator (CSI)-Byte, das in sedezimaler Schreibweise (X) den Wert X'9B' hat. Die Betriebsartprotokolle sind private Erweiterungen der ANSI- Norm, und dieser Umstand ist in diesen Protokollen durch das folgende Byte angegeben, das den ASCII-Code für das Zeichen "> " enthält, welches eine private Erweiterung anzeigt. In anderen Befehlsprotokollen ist eine private Erweiterung durch einen privaten Befehlsspezifizierer angegeben. Danach kommen die Parameter, in diesem Falle Byte, die ASCII-Codes für dezimale Darstellungen von Zahlen enthalten, welche die Betriebsarten angeben, die durch den Befehl gesetzt oder rückgesetzt werden sollen. Jeder Parameter ist vom nächsten durch den ASCII-Code für das Zeichen ";" getrennt. Das letzte Byte im Befehl enthält den Befehlsspezifizierer, im Falle des Protokolls 601 den ASCII-Code für "h" und beim Protokoll 603 dem ASCII-Code für "1". Weitere Protokolle sind in Fig. 7 dargestellt. Datenübertragungs-Steuerungscodes 702 sind einfache Byte-Codes mit den dargestellten Hexadezimalwerten. Datenübertragungsbefehle sind Befehle nach ANSI-Norm und ermangeln daher entweder des den Code für "> " enthaltenden Byte oder eines privaten Befehlsspezifizierers. Mit der weiter oben angegebenen Ausnahme reagiert der uP 201 auf die Protokolle nur dann, wenn TERM 103 der Empfänger der Daten vom HC 101 ist. Hinsichtlich der Steuerungscodes antwortet uP 201 direkt auf den Steuerungscode und führt die Aktion aus, die durch den Steuerungscode angegeben ist. Bei den Befehlen erfaßt der uP 201 die Parameter und den Befehlsspezifizierer im COMB 251 und führt dann unter Verwendung der Parameter den vorgeschriebenen Befehl aus.
- Beginnend mit der Quelle und dem Ziel der übertragenen Daten: Das Ziel für die Daten auf dem Datenweg 401 kann mittels der Datenübertragungsbefehle CSI 4 i 713 und CSI 5 i 715 gesteuert werden, die in Fig. 7 dargestellt sind. CSI 4 i legt TERM 103 als Ziel von Daten auf dem Weg 401 fest, wogegen CSI 5 i AD 109 als Ziel festlegt. Im CTLD 239 gibt die Variable RXDEST 519 den letzten der in TERM 103 empfangenen Befehle 713 und 715 an. In Antwort auf CSI 4 i 713 setzt der uP 201 RXDEST 519 auf 0; in Antwort auf CSI 5 i 715 setzt der uP 201 RXDEST 519 auf 1. Wenn RXDEST 519 den Wert 0 hat, lädt uP 201 das Byte bei HRXR 415 der HRXQ 241 in DATA 409 zur Verarbeitung. Wenn RXDEST 519 den Wert 1 hat, lädt uP 201 dieses Byte bei ATXW 425 in ATXQ 247.
- Die Quelle für vom HC 101 empfangene Daten wird durch das Setzen der Übertrage-Quelle-Betriebsart (TS) gesteuert. Wenn die Betriebsart TS rückgesetzt ist, ist TERM 103 die Quelle; wenn die Betriebsart gesetzt ist, ist AD 109 die Quelle. Die Betriebsart TS kann entweder mittels des in Fig. 6 dargestellten Betriebsartprotokolls oder als Nebeneffekt von CSI 4 i 713 und CSI 5 i 715 gesetzt oder rückgesetzt werden. Letzteres geschieht nur dann, wenn die Übertragungsweg-Leiten-Betriebsart (LR) gesetzt ist. Wenn dies zutrifft, sind die Quellen- und Zielwege so verknüpft, daß sie beide entweder nach TERM 103 oder nach AD 109 gehen und in Antwort auf CSI 4 i 713 und CSI 5 i 715 beide zusammen geändert werden. Ist die Betriebsart LR rückgesetzt, beeinflussen CSI 4 i 713 und CSI 5 i 715 nur den Weg 401.
- Die Betriebsarten TS und LR werden durch Bit in Betriebsartmerkern 505 im CTLD 239 gesteuert. Die Betriebsart TS wird durch ein TS-Bit 517 in den veränderbaren Betriebsartmerkern 2 (MF2) 512 der Merker 505 gesteuert. Die Betriebsart LR wird durch das LR-Bit 507 in den veränderbaren Betriebsartmerkern 1 (MFI) 506 gesteuert. Beide werden durch den uP 201 in Antwort auf die in Fig. 6 dargestellten Betriebsartprotokolle gesetzt und rückgesetzt. Wenn somit uP 201 das Betriebsart- Setzen-Protokoll 601 mit dem Parameter 33 für die Übertragungsweg-Leiten-Betriebsart empfängt, reagiert er darauf durch Setzen des LR-Bit 507, und wenn er das Protokoll 601 mit dem Parameter 32 für die Übertrage-Quelle-Betriebsart empfängt, setzt er das TS-Bit 517. Der uP 201 rücksetzt die Bit, wenn der die Parameter 32 oder 33 im Betriebsart-Rücksetzen-Protokoll 603 empfängt. Wenn das LR-Bit 507 gesetzt ist und uP 201 ein Protokoll CSI 4 i empfängt, reagiert der uP 201 weiter auf das LR-Bit 507 durch Rücksetzen von TS 517 und auf CSI 5 i durch Setzen von TS 517. Wenn TS 517 rückgesetzt ist, antwortet uP 201 auf das Vorhandensein eines Byte in TRXQ 240 durch Verschieben desselben nach HTXQ 243 zur Weiterleitung an HC 101. Wenn TS 517 gesetzt ist, antwortet P 201 auf das Vorhandensein eines Byte in ARXQ 245 durch Übertragen desselben nach HTXQ 243.
- Mittels des Betriebsart-Setzen-Protokolls 601, des Betriebsart-Rücksetzen-Protokolls 603, des CSI 4 i-Protokolls 713 und des CSI 5 i-Protokolls 715 kann ein auf HC 101 ablaufendes Programm eine von vier Möglichkeiten für die Wege 401 und 403 vorschreiben:
- AD 109 sowohl als Quelle wie als Empfänger für zwischen TERM 103 und HC 101 übertragene Daten;
- TERM 103 sowohl als Quelle wie als Empfänger für zwischen TERM 103 und HC 101 übertragene Daten;
- AD 109 als Quelle und TERM 103 als Empfänger für zwischen TERM 103 und HC 101 übertragene Daten, und
- TERM 103 als Quelle und AD 109 als Empfänger für zwischen TERM 103 und HC 101 übertragene Daten.
- Um ein rasches Umschalten des Weges 403 von AD 109 auf TERM 103 in Antwort auf eine Änderung von TS 517 sicherzustellen, kann ARXQ 245 Byte an HTXQ 243 nur dann übertragen, wenn HTXQ 243 weniger als 32 Zeichen enthält, und die Übertragung wird gestoppt, wenn die Anzahl Byte in HTXQ 243 32 erreicht. Folglich wird HTXQ 243 nie mehr als 32 Datenbyte von AD 109 enthalten.
- Die Warteschlangen in den Wegen 401 und 403 haben nur eine begrenzte Kapazität. Im TERM 103, hat jede der Warteschlangen HRXQ 241, HTXQ 243, ARXQ 247 und ARXQ 245 eine maximale Kapazität von 256 Byte. Ähnlich können HC 101 oder AD 109 begrenzten Pufferspeicherplatz zur Aufnahme von Übertragungen vom TERM 103 aufweisen. Folglich ist es notwendig, den Datenfluß zwischen HC 101 und TERM 103 und zwischen TERM 103 und AD 109 so zu steuern, daß sichergestellt ist, daß HC 101 keine Daten an TERM 103 sendet, wenn in HRXQ 241 oder ATXQ 247 kein Platz frei ist, und daß AD 109 keine Daten an TERM 103 sendet, wenn in ARXQ 245 oder HTXQ 243 kein Platz ist, und daß TERM 103 keine Daten an HC 101 oder AD 109 sendet, wenn sie keinen Platz für sie haben. Gemäß Fig. 7 weisen die Protokolle nach ANSI-Norm zwei Flußsteuerungsprotokolle auf, die von dem Daten empfangenden Gerät an das Daten liefernde Gerät gesendet werden, um anzuzeigen, ob das Daten liefernde Gerät die Übertragung beginnen oder stoppen soll. Ein Übertragung- Ein-Protokoll XON 703, mit dem Wert X'11', gibt an, daß das die Daten liefernde Gerät die Übertragung beginnen kann. Ein Übertragung-Aus-Protokoll XOFF 705, mit dem Wert X'13', gibt an, daß das liefernde Gerät die Übertragung stoppen muß. Das TERM 103 weist eine Voreinstellbetriebsart auf, die es einem Benutzer des Endgeräts ermöglicht, verschiedene Dinge vorzuschreiben, darunter das, ob TERM 103 an HC 101 XON/XOFF-Protokolle liefern wird und auf diese Protokolle von HC 101 reagieren wird, und ob TERN 103 XON/XOFF-Protokolle an AD 109 liefert und auf diese Protokolle von AD 109 reagieren wird. In der Voreinstellbetriebsart führt uP 201 ein Programm aus, das den Benutzern Menüs mit Voreinstelloptionen darstellt und dann entsprechend den vom Benutzer gewählten Optionen Variable in CTLD 239 setzt. Die bei der Voreinstellung gesetzten Variablen können in den NVRAM 311 kopiert werden, in dem sie während der Abschaltzeiten des TERM 103 gespeichert bleiben. Bei einer bevorzugten Ausführungsform des TERM 103 sind die Variablen, welche die Generierung von und die Antwort auf XON/XOFF bestimmen, HCOF 529, welche angeben, ob TERM 103 auf XON/XOFF-Protokolle von HC 101 ansprechen und sie an HC 101 liefern soll, und ACOF 530, welche angeben, ob TERM 103 auf XON/XOFF-Protokolle von AD 109 ansprechen und sie an AD 109 liefern soll.
- Wenn diese Variablen für jeden Anschluß automatisches XON/ XOFF vorschreiben, ist die Wirkung auf ankommende XON/XOFF- Protokolle folgende: Der Unterbrechungscode, der auf vom Anschluß kommende Unterbrechungen anspricht, prüft auf XON/ XOFF-Codes und reagiert darauf; sonst nicht. Steht in HIBR 405 ein XOFF-Code, setzt der Unterbrechungscode eine Variable, die diesen Umstand in HOFSTATE 531 angibt. Solange diese Variable XOFF anzeigt, werden keine Byte von HTXQ 243 übertragen. Wird ein XON-Protokoll angetroffen, wird die Variable rückgesetzt und die Übertragung wiederaufgenommen. In ARXQ 245 empfangene XOFF- und XON-Protokolle werden auf gleiche Weise behandelt, mit der Ausnahme, daß die gesetzte Variable in AOFSTATE 533 ist und die betroffene Warteschlange ATXQ 247 ist. Da die Prüfung auf XON/XOFF durch den Unterbrechungscode vorgenommen wird, reagiert TERM 103 auf die Protokolle auch dann, wenn ARXQ 245 oder HRXQ 241 vollgeschrieben sind.
- Die Wirkung hinsichtlich abgehender XON/XOFF-Protokolle ist folgende: Der Code, der HRXQ 241, ATXQ 247, ARXQ 245 und HTXQ 243 verwaltet, überprüft ständig den Zustand dieser Warteschlangen, um festzustellen, ob ein XOFF-Protokoll generiert werden soll und ob, wenn dies geschehen ist, ein XON-Protokoll generiert werden soll. Sobald ein XOFF-Protokoll an HC 101 oder AD 109 generiert worden ist, empfängt TERM 103 weiterhin Daten von dem betreffenden Gerät, bis die Warteschlange, welche die Daten empfängt, tatsächlich vollgeschrieben ist. Zu diesem Zeitpunkt weist TERM 103 weiter empfangene Zeichen ab. Wie weiter oben erwähnt, reagiert der Unterbrechungsverarbeitungscode weiter auf XON-, XOFF-, INT- und NULL-Protokolle und, wie weiter unten erläutert, reagiert auch TERM 103 weiter auf einen CSI 4 i-Befehl. Wenn der Warteschlangen-Verwaltungscode feststellt, daß HRXQ 241 oder ARXQ 245 keine Daten mehr empfangen können, überprüft er die Variablen, um zu ermitteln, ob für den Anschluß automatisches XON/XOFF vorgeschrieben ist; wenn ja, überträgt der Code ein XOFF-Protokoll durch den betreffenden Anschluß. Wenn HRXQ 241 oder ARXQ 245 wieder Daten empfangen können, überprüft der Code, den der uP 201 ausführt, in ähnlicher Weise die Variablen und überträgt ein XON-Protokoll durch den betreffenden Anschluß, wenn für diesen Anschluß automatisches XON/XOFF vorgeschrieben ist.
- Wenn bei der Voreinstellung von TERM 103 für Übertragungen zwischen HC 101 und AD 109 automatisches XON/XOFF vorgeschrieben wurde, kann HC 101 dennoch die Voreinstellung aufheben. HC 101 kann dies mittels eines Betriebsart-Einstell- Protokolls 601 mit dem Parameter 39, das angibt, daß TERM 103 Flußsteuerungsprotokolle und Signale von AD 109 ignorieren soll. Der uP 201 reagiert auf den Parameter 39 im Betriebsart-Einstell-Protokoll 601 durch Setzen des Übergeh-Zusatzgerät-Flußsteuerungs(IAF)-Bit 514 in MF 2 512. Wenn dieses Bit gesetzt ist, ignoriert der Unterbrechungscode, der auf Unterbrechungen im AUXP 227 anspricht, XON/XOFF und jedes Flußsteuerungssignal vom AD 109, ungeachtet der Einstellung des ACOF 530. Stehen in ATXQ 247 Daten, die auf ein XON-Protokoll vom AD 109 warten, werden diese Daten gesendet, sobald das Betriebsart-Setzen-Protokoll 601 das IAF-Bit 514 setzt. Wenn das Bit mittels eines Betriebsart-Rücksetzen-Protokolls 603 rückgesetzt wird, reagiert TERM 103 erneut in der durch ACOF 530 bestimmten Weise.
- Weiter mit der Erstellung von XON/XOFF-Protokollen im TERM 103 bei gesetztem automatischen XON/XOFF: Die Art und Weise, wie diese Protokolle erstellt werden, hängt davon ab, welcher Weg und welches Ziel betroffen ist. Wenn ausgehend vom Hauptrechner-Weg 401: Wenn das Ziel TERM 103 ist, hängt die Erstellung von XON/XOFF-Protokollen nur vom Zustand der HRXQ 241 ab. Der die HRXQ 241 verwaltende Code übersendet ein XOFF-Protokoll über HOSTP 223 an den HC 101, wenn die Werte der Warteschlangenzeiger HRXR 415 und HRXW 417 (in QPTRS 503 der Fig. 5) anzeigen, daß in HRXQ 241 weniger als 64 leere Byte vorhanden sind. Sobald der Code ein XOFF-Protokoll übermittelt hat, wartet er die Anzeige der Warteschlangenzeiger ab, daß in HRXQ 241 weniger als 32 Daten enthaltende Byte vorhanden sind, bevor er ein XON-Protokoll an HC 101 sendet. In HOFSTATE 531 sind Variable enthalten, die das letzte zu übertragende Flußsteuerungsprotokoll angeben.
- Wenn das Ziel von Daten im Weg 401 AD 109 ist, hängt die Erstellung von XON/XOFF-Protokollen an HC 101 vom Zustand sowohl der HRXQ 241 als auch der ATXQ 247 ab. Der uP 201 gibt ein XOFF-Protokoll an HC 101, wenn bei beiden Warteschlangen kein ausreichender Platz vorhanden ist, und ein XON-Protokoll an HC 101 nur dann, wenn beide Warteschlangen ausreichenden Platz aufweisen. Der HRXQ 241 verwaltende Code und der ATXQ 247 verwaltende Code überprüfen die Warteschlangenzeiger HRXR 415, HRXW 417, ATXR 423 und ATXW 425 und geben ein XOFF-Protokoll aus, wenn entweder weniger als 64 freie Byte in HRXQ 241 oder weniger als 96 freie Byte in ATXQ 247 vorhanden sind. Sobald der Code ein XOFF-Protokoll ausgegeben hat, gibt er ein XON-Protokoll nur dann aus, wenn ATXQ 247 und HRXQ 241 je weniger als 32 Zeichen enthalten.
- Wenn somit HC 101 ein XOFF empfängt, ist Platz entweder in HRXQ 241 oder in ATXQ 247 vorhanden. Nach dem Senden des XOFF empfängt TERM 103 weiterhin Byte in HRXQ 241 und verarbeitet sie, entweder durch Verbrauch derselben im TERM 103 oder durch Weiterleiten derselben an ATXQ 247, je nachdem, ob TERM 103 oder AD 109 das Ziel ist. Die Byte werden ferner bedeutend rascher verarbeitet, als sie vom HC 101 an die HRXQ 240 gesandt werden. Wenn somit HC 101 auf das XOFF durch sofortiges Absenden eines Protokolls CSI 4 i 713 an TERM 103 reagiert, sollte in der HRXQ 241 Platz zur Aufnahme des Protokolls vorhanden sein. Nach seinem Empfang wird das Protokoll durch TERM 103 verarbeitet, und TERM 103 wird zum Ziel.
- Wenn ein XOFF erstellt wird, ist stets Platz in der HRXQ 241 zum Empfangen und Verarbeiten des Protokolls CSI 4 i 713, das TERM 103 zum Empfänger macht.
- Bei einer bevorzugten Ausführungsform wird eine Notsteuerung des TERM 103 durch den HC 101 mittels einer neuartigen Reaktion auf das ANSI-INT-Protokoll erreicht. Die Reaktion ist möglich, wenn die Betriebsart Unterbrechungssteuerung-Freigabe gesetzt ist. Die Betriebsart hat den Parameter 40. Wie weiter oben angegeben, wird auf das INT-Protokoll durch den Code reagiert, der auf die Unterbrechung vom HOSTP 223 anspricht, wenn ein Byte vom HC 101 empfangen wird. Folglich wird TERM 103 auf INT auch dann reagieren, wenn HRXQ 241 vollgeschrieben ist. Wenn TERM 103 das INT-Protokoll empfängt und die Betriebsart Unterbrechungssteuerung-Freigabe gesetzt ist, antwortet uP 201 auf das Protokoll durch augenblickliches Löschen von HRXQ 241 und ATXQ 247, durch augenblickliches Beenden der Verarbeitung jeglichen in diesem Augenblick verarbeiteten Befehlsprotokolls, durch Neuaktivieren von HRXQ 241 für den Empfang von Daten, durch Löschen von HTXQ 243 und ARXQ 245, durch Aktivieren von TERM 103 als dem Empfänger im Weg 401 und als der Quelle im Weg 403, und, wenn die Flußsteuerung aktiviert ist, durch das Senden eines XON an HC 101 und eines Flußsteuerungssignals an AD 109, um anzuzeigen, daß HRXQ 241 und ARXQ 245 Daten empfangen können.
- Wenn zum Hauptrechner-Weg 403: Die Erstellung von XON/XOFF- Protokollen an AD 109 ist durch den Zustand von ARXQ 245 bestimmt, der aus den Werten von ARXR 427 und ARXW 429 ermittelt wird. XOFF wird erstellt, wenn ARXQ 245 weniger als 64 Byte frei hat; XON wird erstellt, wenn ARXQ 245 danach weniger als 32 Datenbyte enthält. Ein Zustand, der angibt, was zuletzt erstellt worden ist, ist in AOFSTATE 533 enthalten. Wie weiter oben erwähnt, überträgt ARXQ 245 Daten an HTXQ 243 nur dann, wenn HTXQ 243 weniger als 32 Byte enthält, und überträgt jeweils nie mehr als 32 Byte.
- Eine Schwierigkeit bei der Übergabe der Steuerung für die Datenquelle für den Weg 403 zum Hauptrechner an den HC 101 besteht darin, daß das Gerät, das für den HC 101 gegenwärtig nicht eine Quelle ist, eventuell mit HC 101 in Verbindung treten müßte. Wenn beispielsweise AD 109 gegenwärtig die Quelle ist und ein Benutzer des TERM 103 in das TERM 103 Daten eingibt, auf welche HC 101 reagieren muß, weiß HC 101 nicht, daß er antworten muß, bis er einen Befehl zum Rücksetzen von TS 517 ausgibt. Für TERM 103 bestehen zwei Möglichkeiten zur Lösung dieser Schwierigkeit: eine Betriebsart Nachricht-Bereit-Aktivieren, die es TERM 103 ermöglicht, einen Nachricht-Bereit-Steuerungscode (MW) X'95' an HC 101 zu senden, wenn in der Quelle, die gegenwärtig nicht an HC 101 überträgt, Daten zum Übertragen stehen, und eine Verzahnungs- Betriebsart, die es TERM 103 ermöglicht, Daten vom Endgerät mit Daten vom AD 109 zu verzahnen, wenn TS 517 AD 109 als die Quelle der zu übermittelnden Daten vorschreibt. Die beiden Betriebsarten schließen sich gegenseitig aus, d.h. es wird kein MW-Protokoll gesendet, wenn sich TERM 103 in der Verzahnungs-Betriebsart befindet.
- Die Betriebsarten werden durch Bit in MF1 506 und MF2 512 gesteuert und durch ein Betriebsart-Setzen-Protokoll 601 und ein Betriebsart-Rücksetzen-Protokoll 603 gesetzt und rückgesetzt. Die Betriebsart Nachricht-Bereit-Aktivieren wird durch ein MW-Bit 511 von MF1 506 gesteuert; der zum Setzen und Rücksetzen der Betriebsart benutzte Parameter ist 35; die Verzahnungs-Betriebsart wird durch ein IL-Bit 509 in MFI 506 gesteuert; sein Parameter ist 34. Eine dritte Betriebsart, die Identifizierungs-Betriebsart wird zusammen mit der Verzahnungs-Betriebsart benutzt, um vorzuschreiben, daß einer Bytesequenz ein Identifizierungskennzeichen-Code vorgesetzt wird, um anzuzeigen, ob die Byte vom TERM 103 oder vom AD 109 sind. Die Betriebsart wird durch ein TA-Bit 515 in MF2 512 gesteuert, und sein Parameter ist 31.
- Beginnend mit der Betriebsart Nachricht-Bereit-Aktivieren und unter der Annahme, daß AD 109 die Datenquelle im Weg 403 ist. Wenn das MW-Bit 511 gesetzt ist, verzweigt der die TRXQ 240 verwaltende Code, wenn die Zeiger in der Warteschlange anzeigen, daß sie ein Byte enthält. Der Code, auf den er springt, prüft das MW-Bit 511, und wenn es gesetzt ist, prüft er noch die Variable TMWS 523, die gesetzt wird, wenn das MW-Protokoll gesendet wird, und somit ein wiederholtes Senden des Protokolls verhindert. Ist TMWS 523 nicht gesetzt, gibt der Code den MW-Code an die HTXQ 243. Sobald HC 101 den MW-Code empfängt und mit einem Befehl antwortet, der das TS-Bit 517 rücksetzt, so daß das Endgerät die Quelle ist, rücksetzt der den Befehl ausführende Code TMWS 523. Wenn TERM 103 die Datenquelle im Weg 403 ist und wenn ein Byte vom AD 109 in der ATXQ 247 erscheint, wird die weiter oben angegebene Prozedur ausgeführt, mit der Ausnahme, daß die Variable, die vor dem Senden des MW-Protokolls geprüft, nach dessen Sendung gesetzt und rückgesetzt wird, wenn TS 517 gesetzt wird, um AD 109 als die Quelle vorzuschreiben, AMWS 525 ist.
- Weiter mit der Verzahnungs-Betriebsart. Diese Betriebsart ist nur dann effektiv, wenn das TS-Bit 517 AD 109 als die Quelle vorschreibt. Wenn die IL-Betriebsart 509 gesetzt ist, werden Daten vom TERM 103 mit Daten vom AD 109 verschachtelt; wenn es rückgesetzt ist, kommen die Daten nur vom AD 109. Die Verzahnung wird folgendermaßen verwaltet: Wenn in der Quelle, die gegenwärtig nicht überträgt, Daten stehen, wird es der übertragenden Quelle erlaubt, nur eine begrenzte Zahl Byte mehr aus ihrer Warteschlange an HTXQ 243 zu übertragen. Ist AD 109 die übertragende Quelle, ist es ihr erlaubt, Byte von ARXQ 245 an HTXQ 243 zu übertragen, bis sie 20 Byte mehr übertragen hat oder bis ARXQ 245 leer ist, je nachdem welcher Umstand früher eintritt. Ist TERM 103 die übertragende Quelle, ist es ihm erlaubt, Byte von TRXQ 240 an HTXQ 243 zu übertragen, bis TRXQ 240 leer ist, falls TRXQ 240 weniger als 20 Zeichen enthält, bis es 20 Byte übertragen hat, oder, wenn die 20 Byte den Beginn eines Protokolls einschließen, bis das Protokoll beendet ist. Die Übertragung von vollständigen Protokollen ist möglich, um die Protokollverarbeitung im HC 101 zu vereinfachen. Wenn TA 515 anzeigt, daß Byteserien von TERM 103 oder AD 109 Identifizierungskennzeichen vorzusetzen sind, wird in HTXQ 243 vor einer Reihe von TERM 103 ein Code X'12' und vor einer Reihe vom AD 109 ein Code X'14' geschrieben.
- Im TERM 103 wird das Umschalten von einer Quelle zu einer anderen durch einen Zähler gesteuert, der in einem der Register des uP 201 bewahrt wird, und durch die Variable TAGS 521, deren Wert die Quelle der gegenwärtig an den HC 101 übertragenen Daten anzeigt. Wenn TL 509 gesetzt ist und eine Umschaltung gemacht wurde, wird TAGS 521 gesetzt, um die neue Quelle anzuzeigen, und der Zähler beginnt zu zählen. Sobald 20 Byte aus der Quellenwarteschlange an HTXQ 243 ausgegeben worden sind, wird, wenn die Quellenwarteschlange leer ist oder, im Falle der TRXQ 240, wenn das Protokoll beendet ist, TAGS 521 geprüft, um die laufende Quelle festzustellen, wird die Quelle umgeschaltet, wird TAGS 521 gesetzt, um die neue Quelle anzuzeigen, wird der Zähler rückgesetzt, und es beginnt die Übertragung von der neuen Quellenwarteschlange an HTXQ 243. Wenn TA 515 anzeigt, daß Identifizierungskennzeichen in Benutzung sind, wird das Identifizierungskennzeichen für die durch den neuen Wert von TAGS 521 angegebene Quelle an das Ende von HTXQ 243 gebracht, bevor die Übertragung von der neuen Quelle an HTXQ 243 beginnt.
- Einzelbyte-ANSI-Codes können 7 oder 8 signifikante Bit enthalten. Weil ANSI-Codes in Umgebungen verwendet werden können, in denen nur 7 signifikante Bit übertragen werden können, und in Umgebungen, in denen Geräte 8-Bit-Codes verwenden, die keine ANSI-Codes sind, besteht ein ANSI-Code aus einem Präf ix und einem Code-Wert, der jedem möglichen 8-Bit- Code entspricht. Eine Transparenz-Betriebsart im TERM 103 wandelt 8-Bit-Codes automatisch in ihre Äquivalente mit Präfix+Code um und umgekehrt. Die Umwandlung besteht darin, von dem 8-Bit-Code einen Wert abzuziehen, um einen neuen Code zu bekommen, und dann ein Präfix hinzuzufügen. Die Art des Präfix hängt davon ab, ob die Datenübertragungsleitung zwischen HC 101 und TERM 103 7- oder 8-Bit-Codes überträgt. Im erstgenannten Fall ist das Präfix zwei 7-Bit-Codes, im letztgenannten Fall ist das Präfix ein einzelner 8-Bit-Code. Der Wert des Präfix und der vom anfänglichen Code abgezogene Wert hängen von dem Wert des umzuwandelnden 8-Bit-Code ab. Es gilt folgende Regel:
- Wert 8-Bit-Code Präfix und Codeäquivalent
- x'20' bis X'7E' Präfix oder Codeänderung nicht erforderlich
- X'7F' bis X'DC' PREF2 Code - X'5E'
- X'DD' bis X'1F' PREF3 Code - X'BC'
- Bei der 8-Bit-Datenübertragungsleitung hat PREF2 den Wert X'8E' und PREF3 den Wert X'8F'. Bei der 7-Bit-Datenübertragungsleitung hat PREF2 den Wert ESC X'4E' und PREF3 den Wert ESC X'4F'.
- Die Transparenz-Betriebsart wird gesteuert durch den Transparenz-Betriebsart-Parameter 30 im Betriebsart-Setzen-Protokoll 601 und Betriebsart-Rücksetzen-Protokoll 603. Die laufende Einstellung ist im TR-Bit 513 von MF2 512 gespeichert. Der Wert der Variablen PREF 527 zeigt an, ob PREF2 oder PREF3 erforderlich ist. Wenn Daten vom HC 101 an das AD 109 übertragen werden und das TR-Bit 513 anzeigt, daß die Transparenz-Betriebsart gesetzt ist, achtet der uP 201 bei der Codeübertragung von HRXQ 241 an ATXQ 247 auf PREF2 und PREF3. Trifft er auf ein Präfix, überträgt er das Präfix nicht an ATXQ 247, sondern wartet auf den dem Präfix folgenden Code, führt am Code die vom Präfix vorgeschriebene Operation aus und überträgt dann den sich ergebenden Code an ATXQ 247.
- Wenn der uP 201 Codes von HRXQ 241 an ATXQ 247 überträgt, entdeckt er die 2-Byte-Präfixe durch Achten auf ESC. Wird eines empfangen, achtet uP 201 entweder auf X'4E', auf das er durch Setzen von PREF 527 antwortet, um PREF2 anzugeben, oder auf X'4F', auf das er durch Setzen von PREF 527 antwortet, um PREF3 anzugeben. Der uP 201 erfaßt die Einzelbyte-Präfixe durch Achten auf X'8E' und X'8F'. Der uP 201 reagiert auf X'8E' durch Setzen von PREF 527, um PREF2 anzugeben, und auf X'8F' durch Setzen von PREF 527, um PREF3 anzugeben. Die Präfixe werden nicht zur ATXQ 247 übertragen, und wenn uP 201 den nächsten Code überträgt, bestimmt er nach dem Wert von PREF 527 und dem Wert des Codes, ob er zum Wert des Codes X'5E' oder X'BC' addieren soll. Der uP 201 überträgt dann das Ergebnis dieser Operation an ATXQ 247.
- Wenn Daten vom AD 109 an den HC 101 übertragen werden und die Transparenz-Betriebsart aktiviert ist, führt uP 201 die umgekehrte Umwandlung aus, wenn er Codes von ARXQ 245 an HTXQ 243 überträgt. Liegt der Code-Wert im Bereich X'20' bis X'7E', überträgt uP 201 einfach diesen Code; liegt der Code-Wert zwischen X'7F' und X'DC', setzt der uP 201 PREF 527, um PREF2 anzugeben; liegt er im Bereich zwischen X'DD' und X'1F', setzt uP 201 PREF 527, um PREF3 anzugeben. Ist PREF2 angegeben und besteht zwischen HC 101 und TERM 103 eine 7-Bit-Übertragungsleitung, bringt uP 201 ESC und X'4E' in die HTXQ 243, zieht vom Code X'5E' ab und bringt dann das Ergebnis in die HTXQ 243. Ist PREF3 angegeben und besteht eine 7-Bit-Übertragungsleitung, geht uP 201 wie beschrieben vor, mit der Ausnahme, daß er ESC und X'4F' in HTXQ bringt und X'BC' abzieht. Besteht eine 8-Bit-Übertragungsleitung, bringt uP 201 X'8E' und den Code, abzüglich X'5E', in den Pufferspeicher, wenn PREF2 angegeben ist, und X'8F' und den Code minus X'BC', wenn PREF3 angegeben ist.
Claims (6)
1. Mit einem Hauptrechner (101) und einem Zusatzgerät (109)
verbundenes Anzeigegerät (103, 105), umfassend
- einen ersten Hauptrechner-Weg (403) für die selektive
Übertragung von Daten entweder vom Anzeigegerät (103, 105) oder
dem Zusatzgerät (109) zum Hauptrechner (101), und
- einem zweiten Hauptrechner-Weg (401) für die selektive
Übertragung von Daten vom Hauptrechner (101) entweder zum
Anzeigegerät (103, 105) oder zum Zusatzgerät (109),
gekennzeichnet durch
- eine Datenübertragungs-Steuereinrichtung (201, 235, 239)
zum Steuern einer mit dem ersten Hauptrechner-Weg (403)
verbundenen Logikeinrichtung (223, 227, 240, 243, 245) und einer
mit dem zweiten Hauptrechner-Weg (401) verbundenen
Logikeinrichtung (223, 227, 241, 247), in der Weise, daß
- das Zusatzgerät (109) sowohl als eine Quelle wie
auch als ein Ziel von zwischen dem Anzeigegerät (103,
105) und dem Hauptrechner (101) übertragenen Daten
arbeitet, oder
- das Anzeigegerät (103, 105) sowohl als eine Quelle
wie auch als ein Ziel von zwischen dem Anzeigegerät
(103, 105) und dem Hauptrechner (101) übertragenen Daten
arbeitet, oder
- das Zusatzgerät (109) als eine Quelle von Daten und
das Anzeigegerät (103, 105) als ein Ziel von zwischen
dem Anzeigegerät (103, 105) und dem Hauptrechner (101)
übertragenen Daten arbeiten, oder
- das Anzeigegerät (103, 105) als ein Quelle von
Daten und das Zusatzgerät (109) als ein Ziel von zwischen
dem Anzeigegerät (103, 105) und dem Hauptrechner (101)
übertragenen Daten arbeiten.
2. Gerät nach Anspruch 1, bei dem das Anzeigegerät (103,
105) auf Protokolle vom Hauptrechner (101) anspricht,
dadurch gekennzeichnet, daß
- die Protokolle Übertragungssteuerprotokolle (601, 701)
umfassen, und
- die Datenübertragungs-Steuereinrichtung (201, 235, 239)
eine Einrichtung (201) zum Steuern des ersten Hauptrechner-
Weges (403) und des zweiten Hauptrechner-Weges (401) in
Abhängigkeit von den Übertragungssteuerprotokollen (601, 701)
umfaßt.
3. Gerät nach Anspruch 2,
ferner dadurch gekennzeichnet, daß
die Übertragungssteuerprotokolle (601, 701) umfassen:
- ein Protokoll (611) zum Spezifizieren der Quelle von an
den Hauptrechner (101) übertragenen Daten, und
- ein Protokoll (713, 715) zum Spezifizieren des Ziels von
vom Hauptrechner (101) übertragenen Daten.
4. Gerät nach Anspruch 3, bei dem
- der Hauptrechner (101) auf Protokolle vom Anzeigegerät
(103, 105) anspricht,
- die Übertragungssteuerprotokolle ein Protokoll (705) zur
Anforderung der Übermittlungsbeendigung umfassen, das vom
Anzeigegerät (103, 105) an den Hauptrechner (101) gesendet
wird und auf welches der Hauptrechner (101) durch
Unterbrechen der laufenden Übermittlung an das Anzeigegerät (103,
105) antwortet, und
- der zweite Hauptrechner-Weg (401) einen
Empfangs-Pufferspeicher
(241, 247) zum Empfangen von Daten vom Hauptrechner
(101) aufweist,
dadurch gekennzeichnet, daß
- die Datenübertragungs-Steuereinrichtung (201, 235, 239)
eine Einrichtung (201) umfaßt, welche den
Empfangs-Pufferspeichers (241) überwacht, an den Hauptrechner (101) ein
Beendigungsanforderungs-Protokoll (705) sendet, wenn im
Empfangs-Pufferspeicher (241) noch genügend Platz zur Aufnahme
eines Protokolls (713, 715) ist, welches das Ziel von vom
Hauptrechner (101) übertragenen Daten spezifiziert, und
bewirkt, daß der zweite Hauptrechner-Weg (401) weiter Daten vom
Hauptrechner (101) empfängt, und
- das Anzeigegerät (103, 105) eine Einrichtung (201)
umfaßt, die auf ein vom Hauptrechner (101) bei der Übermittlung
des Protokolls (705) zur Anforderung der
Übermittlungsbeendigung gesandtes Zielspezifizierungs-Protokoll (713, 715)
antwortet.
5. Gerät nach Anspruch 2, bei dem der Hauptrechner (101)
auf Protokolle vom Anzeigegerät (103, 105) antwortet,
dadurch gekennzeichnet, daß
- die Übertragungssteuerprotokolle umfassen:
- ein vom Anzeigegerät (103, 105) an den Hauptrechner
(101) gesandtes erstes Identifizierungsprotokoll (707),
welches angibt, daß die nachfolgenden Daten vom
Anzeigegerät (103, 105) kommen, und
- ein vom Anzeigegerät (103, 105) an den Hauptrechner
(101) gesandtes zweites Identifizierungsprotokoll (709),
welches angibt, daß die nachfolgenden Daten vom
Zusatzgerät (109) kommen, und
- die Datenübertragungs-Steuereinrichtung (201, 235, 239)
eine Einrichtung (201) umfaßt, welche Daten abwechselnd und
während einer festgelegten Zeitspanne vom Zusatzgerät (109)
zum Hauptrechner (101) und vom Anzeigegerät (103, 105) zum
Hauptrechner (101) überträgt und den Daten vom Anzeigegerät
(103, 105) das erste Identifizierungsprotokoll (707) und den
Daten vom Zusatzgerät (109) das zweite
Identifizierungsprotokoll (709) vorsetzt.
6. Gerät nach Anspruch 2, bei dem der Hauptrechner (10) auf
Protokolle vom Anzeigegerät (103, 105) anspricht,
dadurch gekennzeichnet, daß
- die Übertragungsprotokolle ein vom Anzeigegerät (103,
105) an den Hauptrechner (101) gesandtes Nachricht-Bereit-
Protokoll (711) umfaßt, welches angibt, daß vom Anzeigegerät
(103, 105) und dem Zusatzgerät (109) das Gerät, das aktuell
keine Daten an den Hauptrechner (101) überträgt, zu
übertragende Daten hat, und
- die Datenübertragungs-Steuereinrichtung (201, 235, 239)
eine Einrichtung (201) umfaßt, welche den ersten
Hauptrechner-Weg (403) überwacht, um festzustellen, ob vom
Anzeigegerät (103, 105) und dem Zusatzgerät (109) das Gerät, das
aktuell keine Daten überträgt, zu übertragende Daten hat, und im
zutreffenden Fall das Nachricht-Bereit-Protokoll (711) in die
zum Hauptrechner (101) übertragenen Daten einfügt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/907,294 US4954966A (en) | 1986-09-12 | 1986-09-12 | Terminal with viewports, auxiliary device attachment, and host-terminal flan control |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3750920D1 DE3750920D1 (de) | 1995-02-09 |
DE3750920T2 true DE3750920T2 (de) | 1995-08-17 |
Family
ID=25423852
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3750920T Expired - Fee Related DE3750920T2 (de) | 1986-09-12 | 1987-09-07 | Anzeigeendgerät in einem digitalen Datensystem. |
DE3752239T Expired - Fee Related DE3752239T2 (de) | 1986-09-12 | 1987-09-07 | Vorrichtung zur Anzeigebestimmung in einer Anzeigeeinrichtung eines Computerterminals |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3752239T Expired - Fee Related DE3752239T2 (de) | 1986-09-12 | 1987-09-07 | Vorrichtung zur Anzeigebestimmung in einer Anzeigeeinrichtung eines Computerterminals |
Country Status (6)
Country | Link |
---|---|
US (1) | US4954966A (de) |
EP (2) | EP0613117B1 (de) |
JP (1) | JP2554665B2 (de) |
AU (1) | AU602524B2 (de) |
CA (1) | CA1295752C (de) |
DE (2) | DE3750920T2 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5175813A (en) * | 1989-08-14 | 1992-12-29 | International Business Machines Corporation | Window display system and method for creating multiple scrollable and non-scrollable display regions on a non-programmable computer terminal |
US5201033A (en) * | 1990-01-17 | 1993-04-06 | International Business Machines Corporation | Method for controlling cursor movements on certain computer workstations |
US5202961A (en) * | 1990-06-08 | 1993-04-13 | Apple Computer, Inc. | Sequential information controller |
US5295241A (en) * | 1990-08-31 | 1994-03-15 | International Business Machines Corporation | Method and apparatus for local function key control of scrolling on certain computer workstations |
US5359712A (en) * | 1991-05-06 | 1994-10-25 | Apple Computer, Inc. | Method and apparatus for transitioning between sequences of digital information |
US5353391A (en) * | 1991-05-06 | 1994-10-04 | Apple Computer, Inc. | Method apparatus for transitioning between sequences of images |
US5682169A (en) * | 1992-11-13 | 1997-10-28 | International Business Machines Corporation | Method and system for presentation of single and double digit selection fields in a non-programmable terminal |
GB2273797A (en) * | 1992-12-22 | 1994-06-29 | Ibm | Distributed data processing system |
US5546532A (en) * | 1993-02-01 | 1996-08-13 | 3Dlabs Limited | Data-array processing system |
US5846393A (en) * | 1996-06-07 | 1998-12-08 | Geo-Kinetics International, Inc. | Electrochemically-aided biodigestion of organic materials |
US5764479A (en) * | 1996-09-23 | 1998-06-09 | International Business Machines Corporation | Split system personal computer having floppy disk drive moveable between accessible and inaccessible positions |
US7577602B2 (en) | 2002-11-26 | 2009-08-18 | Trading Technologies International Inc. | Method and interface for consolidating price levels on a trading screen |
US20100204979A1 (en) * | 2009-02-06 | 2010-08-12 | Inventec Corporation | System and method for magnifiedly displaying real-time translated word |
US8510206B2 (en) | 2010-07-26 | 2013-08-13 | Trading Technologies International, Inc. | Consolidated price level expansion |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2030827B (en) * | 1978-10-02 | 1982-06-16 | Ibm | Video display terminal with partitioned screen |
US4342095A (en) * | 1979-04-02 | 1982-07-27 | Harris Corporation | Computer terminal |
US4412294A (en) * | 1981-02-23 | 1983-10-25 | Texas Instruments Incorporated | Display system with multiple scrolling regions |
US4493021A (en) * | 1981-04-03 | 1985-01-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Multicomputer communication system |
US4458331A (en) * | 1981-10-09 | 1984-07-03 | International Business Machines Corporation | Interactive display terminal with alternating data processing and text processing sessions with text processing status line operable during data processing session |
US4591967A (en) * | 1982-06-29 | 1986-05-27 | Andover Controls Corporation | Distributed drum emulating programmable controller system |
US4494194A (en) * | 1982-09-30 | 1985-01-15 | Burroughs Corporation | Line support processor for data transfer system |
EP0121603B1 (de) * | 1983-03-07 | 1988-06-29 | International Business Machines Corporation | Anschluss eines Personalcomputers an ein System mit Anzeigeeinrichtungen und einem Verarbeitungsrechner |
EP0121015B1 (de) * | 1983-03-31 | 1990-03-07 | International Business Machines Corporation | Abbildungsraumverwaltung und Wiedergabe in einem bestimmten Teil des Bildschirms eines virtuellen Mehrfunktionsterminals |
US4688170A (en) * | 1983-09-22 | 1987-08-18 | Tau Systems Corporation | Communications network for communicating with computers provided with disparate protocols |
US4665501A (en) * | 1983-09-30 | 1987-05-12 | Esprit Systems, Inc. | Workstation for local and remote data processing |
US4649513A (en) * | 1983-11-15 | 1987-03-10 | International Business Machines Corporation | Apparatus and method for processing system printing data records on a page printer |
EP0145817B1 (de) * | 1983-12-19 | 1988-08-10 | International Business Machines Corporation | System zur Darstellung von Daten |
US4633246A (en) * | 1984-01-09 | 1986-12-30 | Fiberlan, Inc. | Time divison multiplex ring |
JPS60258667A (ja) * | 1984-06-06 | 1985-12-20 | Hitachi Ltd | 対話型計算機システムの制御方法 |
US4733351A (en) * | 1984-12-31 | 1988-03-22 | Wang Laboratories, Inc. | Terminal protocols |
-
1986
- 1986-09-12 US US06/907,294 patent/US4954966A/en not_active Expired - Lifetime
-
1987
- 1987-07-28 CA CA000543126A patent/CA1295752C/en not_active Expired - Lifetime
- 1987-08-11 AU AU76786/87A patent/AU602524B2/en not_active Ceased
- 1987-09-07 DE DE3750920T patent/DE3750920T2/de not_active Expired - Fee Related
- 1987-09-07 EP EP94106418A patent/EP0613117B1/de not_active Expired - Lifetime
- 1987-09-07 DE DE3752239T patent/DE3752239T2/de not_active Expired - Fee Related
- 1987-09-07 EP EP87113048A patent/EP0259815B1/de not_active Expired - Lifetime
- 1987-09-11 JP JP62228219A patent/JP2554665B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0259815B1 (de) | 1994-12-28 |
AU7678687A (en) | 1988-04-21 |
DE3752239D1 (de) | 1999-01-21 |
EP0613117A2 (de) | 1994-08-31 |
JPS6371724A (ja) | 1988-04-01 |
US4954966A (en) | 1990-09-04 |
CA1295752C (en) | 1992-02-11 |
EP0613117B1 (de) | 1998-12-09 |
EP0613117A3 (de) | 1994-10-19 |
JP2554665B2 (ja) | 1996-11-13 |
DE3750920D1 (de) | 1995-02-09 |
DE3752239T2 (de) | 1999-07-08 |
EP0259815A2 (de) | 1988-03-16 |
EP0259815A3 (en) | 1989-10-18 |
AU602524B2 (en) | 1990-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3750920T2 (de) | Anzeigeendgerät in einem digitalen Datensystem. | |
DE3854361T2 (de) | Programmierbare Protokollvorrichtung. | |
DE69730276T2 (de) | Vorrichtung und Verfahren zur Erleichterung der Vermeidung von exzeptionellen bestimmten Zuständen während des Ablaufs eines Programmes | |
DE3114961C2 (de) | ||
DE69308942T2 (de) | Steuerungseinrichtung mit Übermittlung von Steuerungsstrukturdefinitionen | |
DE3587501T3 (de) | Gerät, Verfahren und Struktur zur Umwandlung eines Dokumentes einer Struktur in ein Dokument einer anderen Struktur. | |
DE3853274T2 (de) | Verfahren und Vorrichtung zur Aufteilung von Datenverarbeitungsfunktionen zwischen mehreren Prozessoren. | |
DE68925474T2 (de) | Verriegelungsrechnersysteme | |
DE69029892T2 (de) | Datendarstellung und Protokoll | |
DE3850881T2 (de) | Verfahren und Vorrichtung zur Nachrichtenübertragung zwischen Quellen- und Zielanwender durch einen anteilig genutzten Speicher. | |
DE69329577T2 (de) | Verfahren und system für implementierung-unabhängige schnittstellenspezifikation | |
DE60221030T2 (de) | Verfahren, einrichtung und rechnerprogramm für die entkapselung und verkapselung von paketen mit mehreren kopffeldern | |
EP0006164B1 (de) | Multiprozessorsystem mit gemeinsam benutzbaren Speichern | |
DE2935906C2 (de) | Mikroprozessor | |
DE3725343A1 (de) | Vielzweck-kanalsteuersystem | |
DE2411963B2 (de) | Datenverarbeitungsanlage | |
CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
DE4121446A1 (de) | Terminal-server-architektur | |
DE2431379A1 (de) | Datenverarbeitungseinrichtung | |
DE2703394A1 (de) | Datenverarbeitungssystem | |
DE2719295A1 (de) | Programmsteuerung | |
DE3741850A1 (de) | Ausfuehrungseinheit fuer einen i/o-prozessor | |
DE2459956A1 (de) | Prozessor und diesen verwendendes peripheres verarbeitungssystem | |
DE69324323T2 (de) | Mehrstationskommunikationsbussystem, sowie eine Master-Station und eine Slave-Station für den Einsatz in einem solchen System | |
DE3587874T2 (de) | Protokolle für Terminal. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: WANG LABORATORIES, INC., BILLERICA, MASS., US |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: SPOTWARE TECHNOLOGIES,INC., SAN DIEGO, CALIF., US |
|
8339 | Ceased/non-payment of the annual fee |